Lock de thread java
Use palavras -chave sincronizadas nos threads java para obter sincronização
O sincronizado pode bloquear métodos, classes de bloqueio, objetos de bloqueio, blocos de bloqueio
Bloqueio do método
// O bloqueio de sincronização adicionado ao método é este público sincronizado void print () {System.out.println ("método sincronizado"); tente {thread.sleep (3000); } catch (interruptedException e) {e.printStackTrace (); }}Trava da aula
public sincronizado void print (string msg) {// class Lock sincronizado (mythread.class) {System.out.println (msg); tente {thread.sleep (3000); } catch (interruptedException e) {e.printStackTrace (); }}} Bloqueio de objeto
Tome os bilhetes de trem como exemplo
A janela da classe pública estende thread {public window (nome da string) {super (nome); } static int tick = 100; String estática obj = new String (); @Override public void run () {// comece a vender tickets while (tick> 0) {// Sincronize o bloco de código // uma tecla de bloqueio // Todos os threads devem fazer fila aqui sincronizada (obj) {if (tick> 0) {System.out.println (getName () + "vender o (" + ticks + "] }} tente {thread.sleep (100); } catch (interruptedException e) {e.printStackTrace (); }}}}Obrigado pela leitura, espero que isso possa ajudá -lo. Obrigado pelo seu apoio a este site!