? Os programas de computador são executados na memória, o processador pode lidar com diferentes processos de aplicação . Dentro desses processos de aplicativos , programadores criar subprogramas menores chamados "threads" que funcionam em simultâneo com o outro no programa. Threads não são processos , e não somos responsáveis pelos principais processos que os criaram. Parando a execução de um segmento que não representa o principal processo de uma aplicação não vai parar o processo em si. Concorrência
desenvolvedores usam o termo " concorrência " para designar a capacidade de um programa ou linguagem de programação para executar múltiplas threads de execução ao mesmo tempo . Quando os computadores ganharam a capacidade de executar vários programas , esses programas poderiam todos residem na memória , funcionando simultaneamente. O apoio real de simultaneidade em uma linguagem de programação significa que ele pode suportar threads simultâneos no principal processo programática.
Processos
A execução de um programa segue alguns passos . O processador carrega primeiro o código do programa a partir do disco rígido para a memória principal . O sistema operacional designa um espaço específico endereço na memória para o programa, para que as informações do programa não vazar para outros programas. O programa começa a execução , torna-se então um processo em execução . Programas têm geralmente um processo de execução principal, mas pode consistir em vários processos menores.
Threads
processos são considerados peso-pesado , em que o sistema operacional atribui-lhes espaço de memória dedicada, e os processos devem comunicar através de variáveis especiais para evitar condições de corrida ou bloqueio de memória . Threads são processos leves que residem dentro de um único processo. Um processo pode ter vários tópicos , mas tópicos somente residir em um processo. Threads podem interagir uns com os outros , compartilhar informações, iniciar e parar com menor envolvimento ou recursos do sistema.
Excluindo segmentos
Threads geralmente não são excluídos. Eles terminam de execução e , em seguida, voltar a thread principal. Isso é conhecido como "morte fio . " O processo principal pode esperar para a execução de threads para morrer, seja por meio de alguma alteração de valor variável ou ao promulgar uma função particular. Threads que são criados em um processo que parar a execução não será tipicamente parar a execução do programa. O fio sairá com um erro que o processo pode manipular. O processo principal, que também pode ser considerado o segmento principal , pode morrer. O programa irá então parar.