public class ThreadExample implements Runnable { private String taskName; public ThreadExample(String taskName) { this.taskName = taskName; } public void run() { try { System.out.println("Task '" + taskName + "' is running."); Thread.sleep(2000); // 模拟任务执行 System.out.println("Task '" + taskName + "' has completed."); } catch (InterruptedException e) { e.printStackTrace(); } } public static void main(String[] args) { Thread t1 = new Thread(new ThreadExample("Task 1")); Thread t2 = new Thread(new ThreadExample("Task 2")); t1.start(); // 启动线程t1 t2.start(); // 启动线程t2 try { t1.join(); // 等待线程t1执行完毕 t2.join(); // 等待线程t2执行完毕 } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("All tasks have been completed."); } }
以上代码展示了Java中使用多线程实现任务的并发执行。我们通过实现Runnable接口,并在run方法中编写任务的具体逻辑。首先创建线程t1和t2,然后通过调用start方法启动线程。执行完start后,线程t1和t2会并发执行任务。使用join方法可以等待线程t1和t2执行完毕。
在实际开发中,多线程的应用场景非常广泛。例如,可以使用多线程实现并发处理任务、提高程序运行效率等。在编写多线程代码时,需要注意线程安全和资源共享的问题,确保代码的正确性和性能。