Java Thread Lock
Используйте синхронизированные ключевые слова в потоках Java для достижения синхронизации
Синхронизированный может блокировать методы, классы блокировки, объекты блокировки, блокировки кода блокировки
Метод блокировка
// блокировка синхронизации, добавленная в метод, является общедоступным синхронизированным void print () {System.out.println ("Синхронизированный метод"); try {thread.sleep (3000); } catch (прерванное искусство e) {e.printstacktrace (); }}Замок класса
public Synchronized void print (String msg) {// class lock synchronized (mythread.class) {System.out.println (msg); try {thread.sleep (3000); } catch (прерванное искусство e) {e.printstacktrace (); }}} Замок объекта
Возьмите билеты на поезд в качестве примера
Открытое окно класса Extends Thread {public window (string name) {super (name); } static int tick = 100; статическая строка obj = new String (); @Override public void run () {// начинать продавать билеты, в то время как (tick> 0) {// синхронизировать кодовый блок // клавиша блокировки // Все потоки должны очереди здесь синхронизировать (obj) {if (tick> 0) {System.out.println (getName () + "Продал билет" + chick + "]; }} try {thread.sleep (100); } catch (прерванное искусство e) {e.printstacktrace (); }}}}Спасибо за чтение, я надеюсь, что это поможет вам. Спасибо за поддержку этого сайта!