-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
frosxt edited this page Jan 20, 2026
·
1 revision
Chronos is available via JitPack.
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
dependencies {
implementation 'com.github.frosxt:Chronos:v1.0.0'
}<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.frosxt</groupId>
<artifactId>Chronos</artifactId>
<version>v1.0.0</version>
</dependency>Use SchedulerSpec to configure your scheduler instance:
import com.github.frosxt.chronos.api.spec.SchedulerSpec;
import com.github.frosxt.chronos.factory.Chronos;
import com.github.frosxt.chronos.api.Scheduler;
Scheduler scheduler = Chronos.create(SchedulerSpec.builder()
.threadCount(4)
.threadNamePrefix("my-app-scheduler-")
.build());One-Shot:
scheduler.scheduleOnce(Duration.ofSeconds(30), () -> {
System.out.println("Delayed task executed!");
});Fixed Rate:
// Run every minute, starting immediately
scheduler.scheduleAtFixedRate(Duration.ZERO, Duration.ofMinutes(1), () -> {
System.out.println("Heartbeat...");
});Cron:
// Run at 09:00 AM every day
scheduler.scheduleCron(
CronExpression.parse("0 9 * * *"),
ZoneId.systemDefault(),
() -> generateDailyReport()
);When stopping your application, shut down the scheduler to release resources:
scheduler.close();