diff --git a/src/main/java/lecture/multithreading/timeout/Main.java b/src/main/java/lecture/multithreading/timeout/Main.java index 8258073..ce235db 100644 --- a/src/main/java/lecture/multithreading/timeout/Main.java +++ b/src/main/java/lecture/multithreading/timeout/Main.java @@ -1,10 +1,22 @@ package lecture.multithreading.timeout; - +import java.util.Scanner; public class Main { public static void main(String[] args) { - // TODO - } -} + Scanner scanner = new Scanner(System.in); + System.out.println("You Only Have 10 Seconds..."); + System.out.print("Enter Your Name: "); + + MyRunnable myRunnable = new MyRunnable(); + Thread thread = new Thread(myRunnable); + thread.setDaemon(true); + thread.start(); + + String name = scanner.nextLine(); + System.out.println("Hello " + name + "!"); + + scanner.close(); + } +} \ No newline at end of file diff --git a/src/main/java/lecture/multithreading/timeout/MyRunnable.java b/src/main/java/lecture/multithreading/timeout/MyRunnable.java new file mode 100644 index 0000000..52cb77d --- /dev/null +++ b/src/main/java/lecture/multithreading/timeout/MyRunnable.java @@ -0,0 +1,20 @@ +package lecture.multithreading.timeout; + +public class MyRunnable implements Runnable { + + @Override + public void run() { + for (int i = 0; i <= 10; i++) { + try { + Thread.sleep(1000); + } catch (InterruptedException e) { + System.out.println("Thread Was Interrupted"); + } + + if (i == 10) { + System.out.println("\nTime is Up!"); + System.exit(0); + } + } + } +} \ No newline at end of file