Aracılığıyla paylaş


AfxBeginThread

Yeni bir iş parçacığı oluşturmak için bu işlevini çağırın.

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 
);

Parametreler

  • pfnThreadProc
    Denetleyen işlev iş parçacığı için işaret.Olamaz null.Bu işlev şu şekilde bildirilmesi gerekir:

    UINT __cdecl MyControllingFunction( LPVOID pParam );

  • pThreadClass
    RUNTIME_CLASS 'den türetilen nesnenin CWinThread.

  • pParam
    Denetleyen işlev için parametre işlev bildiriminde gösterildiği gibi geçirilecek parametre pfnThreadProc.

  • nPriority
    İş parçacığının istenen önceliği.Tam listesi ve kullanılabilir öncelikleri açıklaması için bkz: SetThreadPriority , Windows SDK.

  • nStackSize
    Yeni iş parçacığı yığınının bayt cinsinden boyutunu belirtir.0 İse, olarak oluşturulan iş parçacığıyla aynı boyut yığınına yığın boyutu varsayılan olarak ayarlanır.

  • dwCreateFlags
    İş parçacığı oluşturma denetimleri ek bir bayrak belirtir.Bu bayrak, iki değerden birini içerebilir:

    • AfxBeginThread'e bir askıya alma sayımı ile iş parçacığı başlatılamıyor.Kullanım AfxBeginThread'e , herhangi bir üye veri başlatmak istiyorsanız CWinThread gibi nesne m_bAutoDelete veya herhangi bir çalışan iş parçacığı başlamadan önce türetilmiş sınıf üyeleri.Bilgisayarınızın başlatma tamamlandıktan sonra CWinThread::ResumeThread için çalışan iş parçacığı başlatılamıyor.İş parçacığı kadar çalıştırmaz CWinThread::ResumeThread olarak adlandırılır.

    • 0 Hemen oluşturulduktan sonra iş parçacığı başlatılamıyor.

  • lpSecurityAttrs
    İşaret eden bir SECURITY_ATTRIBUTES yapı iş parçacığı için güvenlik özniteliklerini belirtir.null, iş parçacığı oluşturulurken kullanılan aynı güvenlik öznitelikleri.Bu yapı hakkında daha fazla bilgi için bkz: Windows SDK.

Dönüş Değeri

Yeni oluşturulan iş parçacığı nesnesine işaretçi veya null bir hata oluşursa.

Notlar

İlk biçimini AfxBeginThread bir iş parçacığı oluşturur.İkinci formu, bir kullanıcı arabirimi iş parçacığı veya bir çalışan iş parçacığı olarak veren bir iş parçacığı oluşturur.

AfxBeginThreadYeni bir oluşturur CWinThread nesne, çağrıları kendi CreateThread iş parçacığını çalıştırmaya başlamak için çalışır ve iş parçacığı için bir işaretçi döndürür.Oluşturmanın herhangi bir bölümünün başarısız olması durumunda tüm nesnelerin doğru şekilde kaldırıldığından emin olmak için prosedür boyunca denetimler gerçekleştirilir.İş parçacığı sona erdirmek için arama AfxEndThread alınan iş parçacığı veya iş parçacığı, denetleyen işlev dönüş içinde.

Çoklu iş parçacığı kullanımı uygulama tarafından etkinleştirilmiş olması gerekir; Aksi takdirde, bu işlev başarısız olur.Çoklu iş parçacığı kullanımı etkinleştirme hakkında daha fazla bilgi için bakın / md, /mt, /ld (çalışma zamanı kitaplığı kullanın) altında Visual c++ Derleyici Seçenekleri.

Hakkında daha fazla bilgi için AfxBeginThread, makalelere bakın çoklu iş parçacığı kullanımı: iş parçacıklarını oluşturma ve çoklu iş parçacığı kullanımı: kullanıcı arabirimi iş parçacıkları oluşturma.

Örnek

Örnek için bkz: CSocket::Attach.

Gereksinimler

Başlık: afxwin.h

Ayrıca bkz.

Başvuru

AfxGetThread

Kavramlar

mfc makrolar ve Globals