Java 中用多种方式来实现多线程
1.继承 Thread 类:
class MyThread extends Thread {
public void run() {
// 线程执行的代码逻辑
}
}
// 创建线程对象并启动线程
MyThread thread = new MyThread();
thread.start();
2.实现 Runnable 接口:
class MyRunnable implements Runnable {
public void run() {
// 线程执行的代码逻辑
}
}
// 创建线程对象并启动线程
Thread thread = new Thread(new MyRunnable());
thread.start();
3.使用 Callable 和 FutureTask(可获取线程执行结果):
import java.util.concurrent.Callable;
import java.util.concurrent.FutureTask;
class MyCallable implements Callable<Integer> {
public Integer call() throws Exception {
// 线程执行的代码逻辑
return 42;
}
}
// 创建 Callable 对象和 FutureTask 对象
MyCallable callable = new MyCallable();
FutureTask<Integer> task = new FutureTask<>(callable);
// 创建线程对象并启动线程
Thread thread = new Thread(task);
thread.start();
// 获取线程执行结果
int result = task.get();
4.使用 Executor 框架和线程池:
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
class MyRunnable implements Runnable {
public void run() {
// 线程执行的代码逻辑
}
}
// 创建线程池
ExecutorService executor = Executors.newFixedThreadPool(5);
// 提交任务给线程池执行
executor.submit(new MyRunnable());
// 关闭线程池
executor.shutdown();
这些是常见的多线程实现方式,可以根据具体需求选择适合的方式来创建和管理线程。注意,在实际开发中,需要考虑线程安全性、同步问题和线程间的通信等方面的处理。
请注意,以上示例代码仅供参考,实际使用时需要根据具体情况进行适当的调整和扩展。