Compartilhar via


AfxBeginThread

Chamar esta função para criar um novo thread.

CWinThread* AfxBeginThread(
   AFX_THREADPROC pfnThreadProc,
   LPVOID pParam,
   int nPriority = THREAD_PRIORITY_NORMAL,
   UINT nStackSize = 0,
   DWORD dwCreateFlags = 0,
   LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL 
);
CWinThread* AfxBeginThread(
   CRuntimeClass* pThreadClass,
   int nPriority = THREAD_PRIORITY_NORMAL,
   UINT nStackSize = 0,
   DWORD dwCreateFlags = 0,
   LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL 
);

Parâmetros

  • pfnThreadProc
    Aponta para a função de controle para thread de trabalho.Não pode ser NULO.Esta função deve ser declarada sistema autônomo segue:

    UINT __cdecl MyControllingFunction( LPVOID pParam );

  • pThreadClass
    The RUNTIME_CLASS de um objeto derivado de CWinThread.

  • pParam
    Parâmetro seja psistema autônomosed para a função controlar sistema autônomo mostrado no parâmetro para a declaração de função pfnThreadProc.

  • nPriority
    A prioridade desejada a thread.Se for 0, a mesma prioridade sistema autônomo criar thread será usado.Para obter uma lista completa e descrição das prioridades disponível, consulte SetThreadPriority in the Windows SDK.

  • nStackSize
    Especifica o dimensionar em bytes da pilha para o novo thread.Se 0, o dimensionar de pilha padrão será a mesma pilha dimensionar sistema autônomo a criação de thread.

  • dwCreateFlags
    Especifica um sinalizar adicional que controla a criação do thread.Este sinalizar pode conter um dos dois valores:

    • CREATE_SUSPENDED   Inicie o thread com uma contagem de suspensões de um.Use CREATE_SUSPENDED se desejar inicializar quaisquer dados de membro do CWinThread o objeto, sistema autônomo m_bAutoDelete ou todos sistema autônomo membros da sua classe derivada antes de inicia o thread em execução.Uma vez concluída a inicialização, usar CWinthread::Resume thread para iniciar o thread em execução.O thread não irá executar até CWinThread::ResumeThread é chamado.

    • 0   Inicie o thread imediatamente após a criação.

  • lpSecurityAttrs
    Aponta para um SECURITY_ATTRIBUTES estrutura que especifica a segurança de atributos para o thread.If NULO, sistema autônomo mesmos atributos de segurança sistema autônomo criar o segmento será usado.Para obter mais informações nessa estrutura, consulte o Windows SDK.

Valor de retorno

Ponteiro para o objeto thread recém-criado ou NULO se ocorrer uma falha.

Comentários

A primeira forma de AfxBeginThread cria um thread de trabalho. O segundo formulário cria um thread de interface do usuário.

AfxBeginThread cria um novo CWinThread objeto, chamadas de seu CreateThread função para iniciar o thread em execução e retorna um ponteiro para o segmento.As verificações são feitas durante o procedimento para certificar-se de que todos os objetos estão liberados adequadamente caso de falha em qualquer parte da criação.Para finalizar o thread, telefonar AfxEndThread de dentro do thread ou retorno da função de controle do thread de trabalho.

Multithreading deve ser habilitada pelo aplicativo; caso contrário, essa função não funcionará.Para obter mais informações sobre como ativar o multithreading, consulte /LD /MD, /MT, (biblioteca Run-Time uso) em Opções do compilador Visual C++.

Para obter mais informações sobre o AfxBeginThread, consulte os artigos Multithreading: Criar trabalho encadeamentos e Multithreading: Criação de threads de interface do usuário.

Exemplo

Consulte o exemplo para CSocket::anexar.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Conceitos

Macros do MFC e globais

Referência

AfxGetThread