Partilhar via


Segmentos e processos

Segmentos e Processos são conceitos relacionados em ciência da computação.Ambos representam sequências de instruções que devem executar em uma ordem específica.Instruções em segmentos ou processos separados, no entanto, podem executar em paralelo.

Processos existem no sistema operacional e correspondem às quais sistema autônomo usuários vêem sistema autônomo programas ou aplicativos.Um segmento, por outro lado, existe dentro de um processo.Por esse motivo, segmentos são às vezes chamados processos leves.Cada processo consiste de um ou mais segmentos.

A existência de vários processos permite a um computador executar mais de uma tarefa de uma vez.A existência de vários segmentos permite a um processo separar o trabalho a ser realizado em paralelo.Em um computador com multiprocessadores, processos ou segmentos podem ser executado em diferentes processadores.Isso permite que o verdadeiro processamento paralelo.

Não é sempre possível o perfeito processamento em paralelo.Às vezes segmentos devem ser sincronizados.Um thread talvez precise aguardar um resultado de outro segmento, ou um segmento pode precisar acesso exclusivo a um recurso que outro thread está usando.Problemas de sincronização são uma causa comum de erros em aplicativos multissegmentado.Às vezes segmentos podem acabar aguardando um recurso que nunca fica disponível.Isso resultados em uma condição chamada deadlock.

The Visual Studio depurador oferece ferramentas poderosas mas fáceis de usar para depuração de segmentos e processos.

Ferramentas de depuração de segmentos e processos no Visual Studio

As principais ferramentas para trabalhar com processos em Visual Studio são o Anexar ao processo caixa de diálogo de a Processos janela e o Depurar localbarra de ferramentas .As principais ferramentas para depuração de segmentos são o Threads janela, marcadores de thread nas janelas de fonte e o Depurar localbarra de ferramentas .

A tabela a seguir mostra as informações disponível e as ações que você pode executar em cada um desses lugares:

Interface de usuário

Informações disponíveis

Ações que Você pode executar

Caixa de diálogo Attach to Process

Você pode anexar a processos disponíveis:

  • Nome do processo (.exe)

  • Número de identificação do processo

  • Título MenuBar

  • Tipo (gerenciado, x86, x 64, IA64)

  • Nome de usuário (nome de conta)

  • Número de sessão

Selecione um processo a qual anexar.

selecionar um computador remoto.

Alterar o tipo de transporte para conectar a computadores remoto

janela Processes

Processos anexados:

  • Nome do processo

  • Número de identificação do processo

  • Caminho para processar .exe

  • Título MenuBar

  • Estado (quebra.Executando)

  • Depuração (Native, gerenciada, e assim por diante.)

  • Tipo de transporte (padrão, nativo sem autenticação, dispositivos inteligentes)

  • Qualificador (computador remoto) de transporte

Ferramentas:

  • Anexar

  • Desanexar

  • Finalizar

Menu de atalho:

  • Anexar

  • Desanexar

  • Desconectar quando a depuração para

  • Finalizar

janela Threads

Segmentos no processo atual:

  • Identificação do Segmento

  • Categoria (segmento principal, thread da interface, manipulador de telefonar de procedimento remoto ou thread de trabalho)

  • Nome do Segmento

  • Local onde thread é criado

  • Prioridade

  • Suspender nível

Menu de atalho:

  • comutador para um thread

  • Congelar um segmento em execução

  • Descongelar um thread congelado

  • Sinalizar um thread para estudos adicionais

  • Remover sinalização um thread

  • Renomear um thread

  • Mostrar e ocultar threads

Outras ações:

  • Exibir a pilha de chamadas para um thread em um DataTip

Janela de fonte

Indicadores de thread em medianiz à esquerda indicam único ou vários segmentos

Menu de atalho:

  • comutador para um thread.

  • Sinalizar um thread para estudos adicionais

  • Remover sinalização um thread

Depurar local barra de ferramentas

  • Processo corrente

  • Thread corrente

  • registro de ativação corrente

  • comutador para outro processo

  • comutador para outro segmento no processo corrente

  • comutador para outro registro de ativação na thread corrente

  • Sinalizar ou remover sinalizador thread corrente

  • Mostrar somente threads sinalizados

Consulte também

Tarefas

Como: Usar a janela Processes

Outros recursos

Anexando a processos em execução

Depurando Aplicativos Multithread