Compartilhar via


Programas multithread

Um thread é basicamente um caminho de execução através de um programa.Também é a menor unidade de execução que agenda do Win32.Um thread consiste em uma pilha, o estado dos registradores da CPU e uma entrada na lista de execução do Agendador de sistema.Cada thread compartilha recursos de todos os do processo.

Um processo consiste em um ou mais threads e o código, dados e outros recursos de um programa na memória.Recursos do programa típico são abrir arquivos, semáforos e memória alocada dinamicamente.Um programa é executado quando o programador do sistema fornece controle de execução para um dos seus segmentos.O Agendador determina quais segmentos devem executar e quando deve ser executado.Threads de prioridade inferior talvez precise aguardar enquanto segmentos de prioridade mais concluem suas tarefas.Em computadores multiprocessador, o Agendador pode mover segmentos individuais para diferentes processadores para equilibrar a carga de CPU.

Cada thread em um processo funciona de forma independente.A menos que você torná-los visíveis para si, os threads executar individualmente e desconhecem outros threads em um processo.Threads de compartilhamento de recursos comuns, no entanto, devem coordenar seu trabalho usando semáforos ou outro método de comunicação entre processos.Para obter mais informações sobre sincronização de threads, consulte escrever um programa Win32 multithread.

Consulte também

Conceitos

Multithreading com c e Win32