<dependency>
<groupId>com.github.trickstersio</groupId>
<artifactId>trickle-core</artifactId>
<version>1.0.0</version>
</dependency>
import io.trickle.core.scheduler.*;
public class MyTask implements Task {
@Override
public void run() {
}
}
Scheduler scheduler = new DefaultScheduler();
Task myTask = new MyTask();
scheduler.schedule(myTask);
import io.trickle.core.semaphore.*;
Semaphore semaphore = new Semaphore(1);
semaphore.acquire();
semaphore.release();
import io.trickle.core.promise.*;
Promise<String> promise = new DefaultPromise<>();
new Thread(() -> {
String result = doSomeTask();
promise.setSuccess(result);
}).start();
String result = promise.get();
import io.trickle.core.scheduler.*;
Scheduler scheduler = new DefaultScheduler.Builder()
.setThreadPoolSize(10)
.setTaskTimeout(5000)
.setExceptionHandler((t, e) -> {
})
.build();