InitializeCriticalSection
9/8/2008
Essa função inicializa um crítico objeto seção.
Syntax
void InitializeCriticalSection(
LPCRITICAL_SECTION lpCriticalSection
);
Parameters
- lpCriticalSection
[no] Ponteiro para o crítico objeto seção.
Return Value
Nenhum.
Remarks
Os segmentos de um único processo podem usar um crítico objeto seção para sincronização mutual-exclusion. Embora não haja nenhuma garantia sobre a ordem na qual segmentos irão obter a propriedade do crítico seção, o sistema irá processo solicitações de posse de todos os segmentos.
O processo é responsável por alocar a memória usada por um crítico objeto seção, o que ele pode por declarando uma variável do tipo CRITICAL_SECTION. Antes de usar um crítico seção, algumas segmento do processo deve chamar o InitializeCriticalSection função para inicializar o objeto.
Uma vez um crítico objeto seção foi inicializado, os segmentos do processo podem especificar o objeto no EnterCriticalSection ou LeaveCriticalSection função para fornecer acessar mutuamente exclusivos para um recurso compartilhado. Para sincronização semelhante entre os segmentos de processos diferentes, use um objeto mutex.
Um crítico objeto seção não pode ser movido ou copiado. O processo deve também não modificar o objeto, mas deve tratá-lo como logicamente opacidade. Usar apenas o crítico seção funções fornecidas pelo Microsoft Win32® API Para crítico gerenciar objetos seção.
Em baixo-memória situações, InitializeCriticalSection Pode aumentar uma exceção STATUS_NO_MEMORY.
Cada tipo objeto, such as memória mapas, semáforos, eventos, mensagem filas, exclusões mútuas e timers de monitoração, tem sua própria separar espaço para nome. Esvaziar seqüências de caracteres, " ", são tratados como nomeado objetos. Em plataformas com base em Área de trabalho Windows, sincronização objetos todos compartilhar o mesmo namespace.
Requirements
Header | winbase.h |
Library | Coremain.lib |
Windows Embedded CE | Windows CE 1.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |
See Also
Reference
Synchronization Functions
DeleteCriticalSection
EnterCriticalSection
LeaveCriticalSection