Junior — Middle
Как може да се инициира поток на изпълнение в JVM, използвайки който и да е програмен език?
sobes.tech AI
Отговор от AI
В JVM изпълнението на нишка може да бъде инициирано по няколко начина, независимо от езика за програмиране, който се компилира в байткод за JVM. Основните начини:
- Създаване и стартиране на обект Thread:
Thread thread = new Thread(() -> {
// код, изпълняван в новата нишка
System.out.println("Нишката е стартирана");
});
thread.start();
- Използване на интерфейса Runnable:
Runnable task = () -> {
// код на задачата
};
Thread thread = new Thread(task);
thread.start();
- Използване на ExecutorService:
ExecutorService executor = Executors.newFixedThreadPool(2);
executor.submit(() -> {
// код на задачата
});
executor.shutdown();
- В други JVM езици (например Kotlin):
thread(start = true) {
println("Нишка в Kotlin")
}
Така, за да стартирате нишка, трябва да дефинирате задача (Runnable или lambda) и да я предадете на Thread или Executor, след което да извикате start() за започване на изпълнението.