Entendendo threads e processos
Um thread é um fluxo independente de controle que opera dentro do mesmo espaço de endereço que outros fluxos independentes de controles dentro de um processo.
Tradicionalmente, as características de encadeamento e processo são agrupadas em uma única entidade chamada de processo. Em outros sistemas operacionais, as threads são, às vezes, chamadas de processos leves, ou o significado da palavra thread às vezes é ligeiramente diferente.
As seções a seguir discutem as diferenças entre um encadeamento e um processo.
Em sistemas de processos tradicionais de roscada, um processo possui um conjunto de propriedades. Em sistemas multithreaded, essas propriedades são divididas entre processos e threads.
As threads têm algumas limitações e não podem ser usadas para alguns fins especiais que requerem programas multisprocessados.