mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-10-14 00:16:48 +00:00
1 parent
b1b6e82cb1
commit
9073b781b5
1 file changed
+23
-13
@@ -57,20 +57,30 @@ public class App {
|
|||||||
/** Program execution point. */
|
/** Program execution point. */
|
||||||
public void run() {
|
public void run() {
|
||||||
final var executorService = Executors.newSingleThreadScheduledExecutor();
|
final var executorService = Executors.newSingleThreadScheduledExecutor();
|
||||||
executorService.scheduleAtFixedRate(
|
try {
|
||||||
new Runnable() {
|
executorService.scheduleAtFixedRate(
|
||||||
final World world = new World();
|
new Runnable() {
|
||||||
|
final World world = new World();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
var countries = world.fetch();
|
var countries = world.fetch();
|
||||||
LOGGER.info("Our world currently has the following countries:-");
|
LOGGER.info("Our world currently has the following countries:-");
|
||||||
countries.stream().map(country -> "\t" + country).forEach(LOGGER::info);
|
countries.stream().map(country -> "\t" + country).forEach(LOGGER::info);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
0,
|
0,
|
||||||
15,
|
15,
|
||||||
TimeUnit.SECONDS); // Run at every 15 seconds.
|
TimeUnit.SECONDS);
|
||||||
|
|
||||||
|
// Keep running for 45 seconds before shutdown (for demo purpose)
|
||||||
|
TimeUnit.SECONDS.sleep(45);
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
Thread.currentThread().interrupt();
|
||||||
|
LOGGER.error("Thread was interrupted", e);
|
||||||
|
} finally {
|
||||||
|
executorService.shutdown();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in new issue
Block a user