1、Thread类:
Thread类是Java中用于创建线程的类。通过继承Thread类并重写run()方法来创建线程。
public class MyThread extends Thread { @Override public void run() { // 线程执行的代码 } } MyThread thread = new MyThread(); thread.start();
2、Runnable接口:
Runnable接口是Java中提供的用于创建线程的接口。通过实现Runnable接口并重写run()方法来创建线程。
public class MyRunnable implements Runnable { @Override public void run() { // 线程执行的代码 } } MyRunnable runnable = new MyRunnable(); Thread thread = new Thread(runnable); thread.start();
3、synchronized关键字:
synchronized关键字用于保证线程安全,可以用于方法或代码块中。
public synchronized void method() { // 线程安全的代码 }
4、wait()、notify()、notifyAll()方法:
这些方法用于线程间的通信,wait()方法使当前线程等待,notify()方法唤醒等待的线程,notifyAll()方法唤醒所有等待的线程。
synchronized (obj) { while (condition) { obj.wait(); } // 执行代码 obj.notify(); }
5、Lock接口:
Lock接口是Java中提供的用于实现锁的接口,通过实现Lock接口来保证线程安全。
Lock lock = new ReentrantLock(); lock.lock(); try { // 线程安全的代码 } finally { lock.unlock(); }
6、ReentrantLock类:
ReentrantLock类是Java中实现Lock接口的类,可以用于实现线程安全。
ReentrantLock lock = new ReentrantLock(); lock.lock(); try { // 线程安全的代码 } finally { lock.unlock(); }
7、Condition接口:
Condition接口是Java中提供的用于线程间通信的接口,可以用于实现wait()、notify()、notifyAll()方法。
Lock lock = new ReentrantLock(); Condition condition = lock.newCondition(); lock.lock(); try { while (condition) { condition.await(); } // 执行代码 condition.signal(); } finally { lock.unlock(); }
0条评论
点击登录参与评论