Diferença entre Sleep and Wait Diferença entre

Anonim

Sleep vs Wait

Máquinas como Como os computadores usam linguagem artificial para criar programas, controlá-los e permitir que eles comuniquem instruções e expressem algoritmos. Este idioma é chamado de linguagem de programação.

Antes do advento dos computadores, as linguagens de programação já tinham sido usadas em teares e pianos. À medida que o uso do computador se tornou mais comum, agora havia várias linguagens de programação usadas.

Existem vários idiomas de computadores, incluindo idiomas de alto nível, tais como: BASIC, C, C ++, Fortran, Pascal e Java. Cada máquina virtual e CPU tem sua própria linguagem computacional, cada uma com suas próprias fraquezas e pontos fortes, e cada máquina virtual executa um segmento quando iniciado. Este tópico executa o código do aplicativo no programa. Pode fazer um programa funcionar mais rápido e ajudar no seu desempenho e utilidade, especialmente quando múltiplos threads são usados.

As máquinas virtuais, como a máquina virtual Java, suporta um conceito de multi-threading com threads de prioridade superior executados primeiro em tópicos de menor prioridade, garantindo a divisão justa do processamento do tempo.

Ele usa métodos de gerenciamento de threads que podem criar, controlar e encerrar o fluxo de controles ou threads em um espaço compartilhado. Dois desses métodos de gerenciamento de threads são os métodos de espera e de suspensão.

Estes dois métodos são separados. O método sleep codifica a execução do segmento e atrasa a próxima ação enquanto o método de espera não controla a execução do segmento para permitir que outros segmentos sejam executados.

O método wait é definido na classe Object e envia o thread atual para o estado não executável. É usado em conjunto com os métodos notify e notifyAll para permitir que o código de execução de um objeto pause temporariamente e retomá-lo mais tarde.

Funciona chamando um objeto de bloqueio e deixando o segmento atual sincronizar com ele. Wait irá liberar o bloqueio e colocará o segmento na lista de espera e deixará outros threads sincronizar com ele, fazendo com que o fio original acorde. O programador determina o tempo específico em que a execução começa novamente.

O método do sono, por outro lado, é definido como um método estático. Isso atrasa a execução de threads e não objetos, bem como suspende o thread que está sendo executado. Ele envia threads atuais para o estado não executável por algum período de tempo. Isso pode afetar o comportamento de aplicativos que são multi-threaded porque ele mantém os bloqueios de sincronização do thread atual. Uma vez que o segmento está em um bloco sincronizado, nenhum outro segmento pode entrar no bloco.

Resumo:

1. "Sleep" é um método de gerenciamento de threads que é definido como um método estático enquanto "wait" é um método de gerenciamento de threads que está definido na classe Object.

2. Sleep é um método que executa threads enquanto espera é um método que executa objetos.

3. O sono mantém os bloqueios de sincronização do segmento atual e influencia o comportamento das aplicações enquanto a espera não faz.

4. Sleep controla a execução do segmento e não permite outros tópicos em um bloco sincronizado enquanto espera não controla a execução do segmento para permitir que outros segmentos sejam executados.