com.zman.thread.eventloop.EventLoop Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of event-loop Show documentation
Show all versions of event-loop Show documentation
a pure lightweight event-loop.
package com.zman.thread.eventloop;
import java.util.concurrent.Callable;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
/**
* eventloop一旦创建就会开始运行loop,无需start,直接可以submit任务
*/
public interface EventLoop {
/**
* 提交任务
* @param taskType 事件类型,用于区分不同类型的任务,用于做任务调度
* @param task 任务
* @param 返回值的泛型
* @return future
*/
Future submit(String taskType, Callable task);
/**
* 提交任务
* @param taskType 事件类型,用于区分不同类型的任务,用于做任务调度
* @param task 任务
* @param timeout 时间
* @param timeUnit 单位
* @param 返回值的泛型
* @return future
*/
Future submit(String taskType, Callable task, long timeout, TimeUnit timeUnit);
/**
* 停止event loop
* @return future
*/
Future> shutdown();
}