Bagikan melalui


CWinThread Kelas

Mewakili utas eksekusi dalam aplikasi.

Sintaks

class CWinThread : public CCmdTarget

Anggota

Konstruktor Publik

Nama Deskripsi
CWinThread::CWinThread Membuat CWinThread objek.

Metode Publik

Nama Deskripsi
CWinThread::CreateThread Memulai eksekusi CWinThread objek.
CWinThread::ExitInstance Ambil alih untuk membersihkan ketika utas Anda berakhir.
CWinThread::GetMainWnd Mengambil penunjuk ke jendela utama untuk utas.
CWinThread::GetThreadPriority Mendapatkan prioritas utas saat ini.
CWinThread::InitInstance Ambil alih untuk melakukan inisialisasi instans utas.
CWinThread::IsIdleMessage Memeriksa pesan khusus.
CWinThread::OnIdle Ambil alih untuk melakukan pemrosesan waktu diam khusus utas.
CWinThread::PostThreadMessage Memposting pesan ke objek lain CWinThread .
CWinThread::PreTranslateMessage Memfilter pesan sebelum dikirim ke fungsi TranslateMessage Windows dan DispatchMessage.
CWinThread::ProcessMessageFilter Mencegat pesan tertentu sebelum mencapai aplikasi.
CWinThread::ProcessWndProcException Mencegat semua pengecualian yang tidak tertangani yang dilemparkan oleh penangan pesan dan perintah utas.
CWinThread::PumpMessage Berisi perulangan pesan utas.
CWinThread::ResumeThread Mengurangi jumlah penangguhan utas.
CWinThread::Run Fungsi pengontrol untuk utas dengan pompa pesan. Ambil alih untuk menyesuaikan perulangan pesan default.
CWinThread::SetThreadPriority Mengatur prioritas utas saat ini.
CWinThread::SuspendThread Menaikkan jumlah penangguhan utas.

Operator Publik

Nama Deskripsi
CWinThread::operator HANDLE Mengambil handel CWinThread objek.

Anggota Data Publik

Nama Deskripsi
CWinThread::m_bAutoDelete Menentukan apakah akan menghancurkan objek pada penghentian utas.
CWinThread::m_hThread Tangani ke utas saat ini.
CWinThread::m_nThreadID ID utas saat ini.
CWinThread::m_pActiveWnd Penunjuk ke jendela utama aplikasi kontainer saat server OLE aktif di tempat.
CWinThread::m_pMainWnd Menyimpan pointer ke jendela utama aplikasi.

Keterangan

Alur utama eksekusi biasanya disediakan oleh objek yang berasal dari CWinApp; CWinApp berasal dari CWinThread. Objek tambahan CWinThread memungkinkan beberapa utas dalam aplikasi tertentu.

Ada dua jenis utas umum yang CWinThread mendukung: utas pekerja dan utas antarmuka pengguna. Utas pekerja tidak memiliki pompa pesan: misalnya, utas yang melakukan penghitungan latar belakang dalam aplikasi spreadsheet. Utas antarmuka pengguna memiliki pompa pesan dan pesan proses yang diterima dari sistem. CWinApp dan kelas yang berasal darinya adalah contoh utas antarmuka pengguna. Utas antarmuka pengguna lainnya juga dapat berasal langsung dari CWinThread.

Objek kelas CWinThread biasanya ada selama durasi utas. Jika Anda ingin mengubah perilaku ini, atur m_bAutoDelete ke FALSE.

Kelas CWinThread ini diperlukan untuk membuat kode Anda dan MFC sepenuhnya aman utas. Data thread-local yang digunakan oleh kerangka kerja untuk mempertahankan informasi khusus utas dikelola oleh CWinThread objek. Karena ketergantungan ini pada CWinThread untuk menangani data lokal utas, utas apa pun yang menggunakan MFC harus dibuat oleh MFC. Misalnya, utas yang dibuat oleh fungsi _beginthreadrun-time , _beginthreadex tidak dapat menggunakan API MFC apa pun.

Untuk membuat utas, panggil AfxBeginThread. Ada dua formulir, tergantung pada apakah Anda menginginkan utas pekerja atau antarmuka pengguna. Jika Anda menginginkan utas antarmuka pengguna, teruskan ke AfxBeginThread penunjuk ke CRuntimeClass kelas turunan Anda CWinThread. Jika Anda ingin membuat utas pekerja, teruskan ke AfxBeginThread penunjuk ke fungsi pengontrol dan parameter ke fungsi pengontrol. Untuk utas pekerja dan utas antarmuka pengguna, Anda dapat menentukan parameter opsional yang memodifikasi prioritas, ukuran tumpukan, bendera pembuatan, dan atribut keamanan. AfxBeginThread akan mengembalikan pointer ke objek baru CWinThread Anda.

Alih-alih memanggil AfxBeginThread, Anda dapat membuat CWinThreadobjek -turunan lalu memanggil CreateThread. Metode konstruksi dua tahap ini berguna jika Anda ingin menggunakan CWinThread kembali objek antara pembuatan berturut-turut dan penghentian eksekusi utas.

Untuk informasi selengkapnya tentang CWinThread, lihat artikel Multithreading dengan C++ dan MFC, Multithreading: Membuat Utas Antarmuka Pengguna, Multithreading: Membuat Utas Pekerja, dan Multithreading: Cara Menggunakan Kelas Sinkronisasi.

Hierarki Warisan

CObject

CCmdTarget

CWinThread

Persyaratan

Header: afxwin.h

CWinThread::CreateThread

Membuat utas untuk dijalankan dalam ruang alamat proses panggilan.

BOOL CreateThread(
    DWORD dwCreateFlags = 0,
    UINT nStackSize = 0,
    LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL);

Parameter

dwCreateFlags
Menentukan bendera tambahan yang mengontrol pembuatan utas. Bendera ini dapat berisi salah satu dari dua nilai:

  • CREATE_SUSPENDED Mulai utas dengan jumlah yang ditangguhkan. Gunakan CREATE_SUSPENDED jika Anda ingin menginisialisasi data CWinThread anggota objek apa pun, seperti m_bAutoDelete atau anggota kelas turunan Anda, sebelum utas mulai berjalan. Setelah inisialisasi Anda selesai, gunakan CWinThread::ResumeThread untuk memulai utas yang berjalan. Utas tidak akan dijalankan sampai CWinThread::ResumeThread dipanggil.

  • 0 Mulai utas segera setelah pembuatan.

nStackSize
Menentukan ukuran dalam byte tumpukan untuk utas baru. Jika 0, ukuran tumpukan default ke ukuran yang sama dengan utas utama proses.

lpSecurityAttrs
Menunjuk ke SECURITY_ATTRIBUTES struktur yang menentukan atribut keamanan untuk utas.

Tampilkan Nilai

Bukan nol jika utas berhasil dibuat; jika tidak, 0.

Keterangan

Gunakan AfxBeginThread untuk membuat objek utas dan menjalankannya dalam satu langkah. Gunakan CreateThread jika Anda ingin menggunakan kembali objek utas antara pembuatan berturut-turut dan penghentian eksekusi utas.

CWinThread::CWinThread

Membuat CWinThread objek.

CWinThread();

Keterangan

Untuk memulai eksekusi utas, panggil CreateThread fungsi anggota. Anda biasanya akan membuat utas dengan memanggil AfxBeginThread, yang akan memanggil konstruktor ini dan CreateThread.

CWinThread::ExitInstance

Dipanggil oleh kerangka kerja dari dalam fungsi anggota yang jarang ditimpa Run untuk keluar dari instans utas ini, atau jika panggilan gagal InitInstance .

virtual int ExitInstance();

Tampilkan Nilai

Kode keluar utas; 0 menunjukkan tidak ada kesalahan, dan nilai yang lebih besar dari 0 menunjukkan kesalahan. Nilai ini dapat diambil dengan memanggil GetExitCodeThread.

Keterangan

Jangan panggil fungsi anggota ini dari mana saja tetapi dalam Run fungsi anggota. Fungsi anggota ini hanya digunakan dalam utas antarmuka pengguna.

Implementasi default fungsi ini menghapus CWinThread objek jika m_bAutoDelete adalah TRUE. Ambil alih fungsi ini jika Anda ingin melakukan pembersihan tambahan saat utas Anda berakhir. Implementasi ExitInstance Anda harus memanggil versi kelas dasar setelah kode Anda dijalankan.

CWinThread::GetMainWnd

Jika aplikasi Anda adalah server OLE, panggil fungsi ini untuk mengambil penunjuk ke jendela utama aktif aplikasi alih-alih langsung merujuk ke m_pMainWnd anggota objek aplikasi.

virtual CWnd* GetMainWnd();

Tampilkan Nilai

Fungsi ini mengembalikan penunjuk ke salah satu dari dua jenis jendela. Jika utas Anda adalah bagian dari server OLE dan memiliki objek yang aktif di tempat di dalam kontainer aktif, fungsi ini mengembalikan CWinApp::m_pActiveWnd anggota CWinThread data objek.

Jika tidak ada objek yang aktif di tempat dalam kontainer atau aplikasi Anda bukan server OLE, fungsi ini mengembalikan anggota data objek utas m_pMainWnd Anda.

Keterangan

Untuk utas antarmuka pengguna, ini setara dengan secara langsung merujuk ke m_pActiveWnd anggota objek aplikasi Anda.

Jika aplikasi Anda bukan server OLE, maka memanggil fungsi ini setara dengan langsung merujuk ke m_pMainWnd anggota objek aplikasi Anda.

Ambil alih fungsi ini untuk mengubah perilaku default.

CWinThread::GetThreadPriority

Mendapatkan tingkat prioritas utas saat ini dari utas ini.

int GetThreadPriority();

Tampilkan Nilai

Tingkat prioritas utas saat ini dalam kelas prioritasnya. Nilai yang dikembalikan akan menjadi salah satu dari berikut ini, yang tercantum dari prioritas tertinggi ke terendah:

  • THREAD_PRIORITY_TIME_CRITICAL

  • THREAD_PRIORITY_HIGHEST

  • THREAD_PRIORITY_ABOVE_NORMAL

  • THREAD_PRIORITY_NORMAL

  • THREAD_PRIORITY_BELOW_NORMAL

  • THREAD_PRIORITY_LOWEST

  • THREAD_PRIORITY_IDLE

Untuk informasi selengkapnya tentang prioritas ini, lihat SetThreadPriority di Windows SDK.

CWinThread::InitInstance

InitInstance harus ditimpa untuk menginisialisasi setiap instans baru utas antarmuka pengguna.

virtual BOOL InitInstance();

Tampilkan Nilai

Bukan nol jika inisialisasi berhasil; jika tidak, 0.

Keterangan

Biasanya, Anda mengambil alih InitInstance untuk melakukan tugas yang harus diselesaikan saat utas pertama kali dibuat.

Fungsi anggota ini hanya digunakan dalam utas antarmuka pengguna. Lakukan inisialisasi utas pekerja dalam fungsi pengontrol yang diteruskan ke AfxBeginThread.

CWinThread::IsIdleMessage

Ambil alih fungsi ini agar tidak OnIdle dipanggil setelah pesan tertentu dihasilkan.

virtual BOOL IsIdleMessage(MSG* pMsg);

Parameter

pMsg
Menunjuk ke pesan saat ini yang sedang diproses.

Tampilkan Nilai

Bukan nol jika OnIdle harus dipanggil setelah memproses pesan; jika tidak, 0.

Keterangan

Implementasi default tidak memanggil OnIdle setelah pesan dan pesan mouse redundan yang dihasilkan oleh karet berkedip.

Jika aplikasi telah membuat timer singkat, OnIdle akan sering dipanggil, menyebabkan masalah performa. Untuk meningkatkan performa aplikasi seperti itu, ambil alih IsIdleMessage di kelas -turunan aplikasi CWinAppuntuk memeriksa WM_TIMER pesan sebagai berikut:

BOOL CMyWinApp::IsIdleMessage(MSG* pMsg)
{
   if (!CWinApp::IsIdleMessage(pMsg) || pMsg->message == WM_TIMER)
      return FALSE;
   else
      return TRUE;
}

Penanganan WM_TIMER dengan cara ini akan meningkatkan performa aplikasi yang menggunakan timer pendek.

CWinThread::m_bAutoDelete

Menentukan apakah CWinThread objek harus dihapus secara otomatis pada penghentian utas.

BOOL m_bAutoDelete;

Keterangan

Anggota m_bAutoDelete data adalah variabel publik jenis BOOL.

Nilai m_bAutoDelete tidak memengaruhi bagaimana handel utas yang mendasar ditutup, tetapi memengaruhi waktu penutupan handel. Handel utas selalu ditutup ketika CWinThread objek dihancurkan.

CWinThread::m_hThread

Tangani ke utas yang dilampirkan ke ini CWinThread.

HANDLE m_hThread;

Keterangan

Anggota m_hThread data adalah variabel publik jenis HANDLE. Ini hanya valid jika objek utas kernel yang mendasar saat ini ada, dan handel belum ditutup.

Destruktor CWinThread memanggil CloseHandle di m_hThread. Jika m_bAutoDelete adalah TRUE ketika utas dihentikan, CWinThread objek dihancurkan, yang membatalkan penunjuk apa pun ke CWinThread objek dan variabel anggotanya. Anda mungkin memerlukan m_hThread anggota untuk memeriksa nilai keluar utas, atau menunggu sinyal. Untuk mempertahankan CWinThread objek dan anggotanya m_hThread selama eksekusi utas dan setelah dihentikan, atur m_bAutoDelete ke FALSE sebelum Anda mengizinkan eksekusi utas untuk melanjutkan. Jika tidak, utas dapat mengakhiri, menghancurkan CWinThread objek, dan menutup handel sebelum Anda mencoba menggunakannya. Jika Anda menggunakan teknik ini, Anda bertanggung jawab untuk menghapus CWinThread objek.

CWinThread::m_nThreadID

ID utas yang dilampirkan ke ini CWinThread.

DWORD m_nThreadID;

Keterangan

Anggota m_nThreadID data adalah variabel publik jenis DWORD. Ini hanya valid jika objek utas kernel yang mendasar saat ini ada. Lihat juga komentar tentang m_hThread masa pakai.

Contoh

Lihat contoh untuk AfxGetThread.

CWinThread::m_pActiveWnd

Gunakan anggota data ini untuk menyimpan penunjuk ke objek jendela aktif utas Anda.

CWnd* m_pActiveWnd;

Keterangan

Pustaka Kelas Microsoft Foundation akan secara otomatis mengakhiri utas Anda saat jendela yang dirujuk oleh m_pActiveWnd ditutup. Jika utas ini adalah utas utama untuk aplikasi, aplikasi juga akan dihentikan. Jika anggota data ini adalah NULL, jendela aktif untuk objek aplikasi CWinApp akan diwariskan. m_pActiveWnd adalah variabel publik jenis CWnd*.

Biasanya, Anda mengatur variabel anggota ini saat Anda mengambil alih InitInstance. Dalam utas pekerja, nilai anggota data ini diwarisi dari utas induknya.

CWinThread::m_pMainWnd

Gunakan anggota data ini untuk menyimpan penunjuk ke objek jendela utama utas Anda.

CWnd* m_pMainWnd;

Keterangan

Pustaka Kelas Microsoft Foundation akan secara otomatis mengakhiri utas Anda saat jendela yang dirujuk oleh m_pMainWnd ditutup. Jika utas ini adalah utas utama untuk aplikasi, aplikasi juga akan dihentikan. Jika anggota data ini adalah NULL, jendela utama untuk objek aplikasi CWinApp akan digunakan untuk menentukan kapan harus mengakhiri utas. m_pMainWnd adalah variabel publik jenis CWnd*.

Biasanya, Anda mengatur variabel anggota ini saat Anda mengambil alih InitInstance. Dalam utas pekerja, nilai anggota data ini diwarisi dari utas induknya.

CWinThread::OnIdle

Ambil alih fungsi anggota ini untuk melakukan pemrosesan waktu diam.

virtual BOOL OnIdle(LONG lCount);

Parameter

lCount
Penghitung bertahap setiap kali OnIdle dipanggil ketika antrean pesan utas kosong. Jumlah ini diatur ulang ke 0 setiap kali pesan baru diproses. Anda dapat menggunakan lCount parameter untuk menentukan lamanya waktu relatif utas diam tanpa memproses pesan.

Tampilkan Nilai

Nonzero untuk menerima lebih banyak waktu pemrosesan diam; 0 jika tidak ada lagi waktu pemrosesan diam yang diperlukan.

Keterangan

OnIdle dipanggil dalam perulangan pesan default saat antrean pesan utas kosong. Gunakan penimpaan Anda untuk memanggil tugas pengatur diam latar belakang Anda sendiri.

OnIdle harus mengembalikan 0 untuk menunjukkan bahwa tidak ada waktu pemrosesan menganggur tambahan yang diperlukan. Parameter lCount bertahap setiap kali OnIdle dipanggil ketika antrean pesan kosong dan diatur ulang ke 0 setiap kali pesan baru diproses. Anda dapat memanggil rutinitas menganggur yang berbeda berdasarkan jumlah ini.

Implementasi default fungsi anggota ini membebaskan objek sementara dan pustaka tautan dinamis yang tidak digunakan dari memori.

Fungsi anggota ini hanya digunakan dalam utas antarmuka pengguna.

Karena aplikasi tidak dapat memproses pesan hingga OnIdle kembali, jangan lakukan tugas panjang dalam fungsi ini.

CWinThread::operator HANDLE

Mengambil handel CWinThread objek.

operator HANDLE() const;

Tampilkan Nilai

Jika berhasil, handel objek utas; jika tidak, NULL.

Keterangan

Gunakan handel untuk langsung memanggil WINDOWS API.

CWinThread::PostThreadMessage

Dipanggil untuk memposting pesan yang ditentukan pengguna ke objek lain CWinThread .

BOOL PostThreadMessage(
    UINT message,
    WPARAM wParam,
    LPARAM lParam);

Parameter

message
ID pesan yang ditentukan pengguna.

wParam
Parameter pesan pertama.

lParam
Parameter pesan kedua.

Tampilkan Nilai

Bukan nol jika berhasil; jika tidak, 0.

Keterangan

Pesan yang diposting dipetakan ke handler pesan yang tepat oleh makro ON_THREAD_MESSAGEpeta pesan .

Catatan

Saat Anda memanggil PostThreadMessage, pesan ditempatkan dalam antrean pesan utas. Namun, karena pesan yang diposting dengan cara ini tidak terkait dengan jendela, MFC tidak akan mengirimkannya ke penangan pesan atau perintah. Untuk menangani pesan ini, ambil alih PreTranslateMessage() fungsi kelas turunan Anda CWinApp, dan tangani pesan secara manual.

CWinThread::PreTranslateMessage

Ambil alih fungsi ini untuk memfilter pesan jendela sebelum dikirim ke fungsi TranslateMessage Windows dan DispatchMessage.

virtual BOOL PreTranslateMessage(MSG* pMsg);

Parameter

pMsg
Menunjuk ke struktur yang MSG berisi pesan yang akan diproses.

Tampilkan Nilai

Bukan nol jika pesan sepenuhnya diproses dan tidak boleh diproses PreTranslateMessage lebih lanjut. Nol jika pesan harus diproses dengan cara normal.

Keterangan

Fungsi anggota ini hanya digunakan dalam utas antarmuka pengguna.

CWinThread::ProcessMessageFilter

Fungsi hook kerangka kerja memanggil fungsi anggota ini untuk memfilter dan merespons pesan Windows tertentu.

virtual BOOL ProcessMessageFilter(
    int code,
    LPMSG lpMsg);

Parameter

code
Menentukan kode kait. Fungsi anggota ini menggunakan kode untuk menentukan cara memproses lpMsg.

lpMsg
Penunjuk ke struktur WindowsMSG.

Tampilkan Nilai

Bukan nol jika pesan diproses; jika tidak, 0.

Keterangan

Fungsi kait memproses peristiwa sebelum dikirim ke pemrosesan pesan normal aplikasi.

Jika Anda mengambil alih fitur lanjutan ini, pastikan untuk memanggil versi kelas dasar untuk mempertahankan pemrosesan kait kerangka kerja.

CWinThread::ProcessWndProcException

Kerangka kerja memanggil fungsi anggota ini setiap kali handler tidak menangkap pengecualian yang dilemparkan dalam salah satu pesan utas atau handler perintah Anda.

virtual LRESULT ProcessWndProcException(
    CException* e,
    const MSG* pMsg);

Parameter

e
Menunjuk ke pengecualian yang tidak tertangani.

pMsg
Menunjuk ke struktur yang MSG berisi informasi tentang pesan windows yang menyebabkan kerangka kerja melemparkan pengecualian.

Tampilkan Nilai

-1 jika WM_CREATE pengecualian dihasilkan; jika tidak, 0.

Keterangan

Jangan panggil fungsi anggota ini secara langsung.

Implementasi default fungsi anggota ini hanya menangani pengecualian yang dihasilkan dari pesan berikut:

Perintah Perbuatan
WM_CREATE Gagal.
WM_PAINT Validasi jendela yang terpengaruh, sehingga mencegah pesan lain WM_PAINT dihasilkan.

Ambil alih fungsi anggota ini untuk memberikan penanganan global atas pengecualian Anda. Panggil fungsionalitas dasar hanya jika Anda ingin menampilkan perilaku default.

Fungsi anggota ini hanya digunakan dalam utas yang memiliki pompa pesan.

CWinThread::PumpMessage

Berisi perulangan pesan utas.

virtual BOOL PumpMessage();

Keterangan

PumpMessage berisi perulangan pesan utas. PumpMessage dipanggil oleh CWinThread untuk memompa pesan utas. Anda dapat memanggil PumpMessage langsung untuk memaksa pesan diproses, atau Anda dapat mengambil alih PumpMessage untuk mengubah perilaku defaultnya.

Memanggil PumpMessage langsung dan mengesampingkan perilaku defaultnya disarankan hanya untuk pengguna tingkat lanjut.

CWinThread::ResumeThread

Dipanggil untuk melanjutkan eksekusi utas yang ditangguhkan oleh SuspendThread fungsi anggota, atau utas yang dibuat dengan CREATE_SUSPENDED bendera.

DWORD ResumeThread();

Tampilkan Nilai

Jumlah penangguhan utas sebelumnya jika berhasil; 0xFFFFFFFF Sebaliknya. Jika nilai yang dikembalikan adalah nol, utas saat ini tidak ditangguhkan. Jika nilai yang dikembalikan adalah satu, utas ditangguhkan, tetapi sekarang dimulai ulang. Nilai pengembalian apa pun yang lebih besar dari satu berarti utas tetap ditangguhkan.

Keterangan

Jumlah penangguhan utas saat ini berkurang satu. Jika jumlah penangguhan dikurangi menjadi nol, utas melanjutkan eksekusi; jika tidak, utas tetap ditangguhkan.

CWinThread::Run

Menyediakan perulangan pesan default untuk utas antarmuka pengguna.

virtual int Run();

Tampilkan Nilai

Nilai int yang dikembalikan oleh utas. Nilai ini dapat diambil dengan memanggil GetExitCodeThread.

Keterangan

Run memperoleh dan mengirimkan pesan Windows hingga aplikasi menerima WM_QUIT pesan. Jika antrean pesan utas OnIdle saat ini tidak berisi pesan, Run panggilan untuk melakukan pemrosesan waktu diam. Pesan masuk masuk masuk ke PreTranslateMessage fungsi anggota untuk pemrosesan khusus lalu ke fungsi TranslateMessage Windows untuk terjemahan keyboard standar. Akhirnya, DispatchMessage fungsi Windows dipanggil.

Run jarang ditimpa, tetapi Anda dapat mengambil alihnya untuk menerapkan perilaku khusus.

Fungsi anggota ini hanya digunakan dalam utas antarmuka pengguna.

CWinThread::SetThreadPriority

Fungsi ini menetapkan tingkat prioritas utas saat ini dalam kelas prioritasnya.

BOOL SetThreadPriority(int nPriority);

Parameter

nPriority
Menentukan tingkat prioritas utas baru dalam kelas prioritasnya. Parameter ini harus merupakan salah satu nilai berikut, yang tercantum dari prioritas tertinggi ke terendah:

  • THREAD_PRIORITY_TIME_CRITICAL

  • THREAD_PRIORITY_HIGHEST

  • THREAD_PRIORITY_ABOVE_NORMAL

  • THREAD_PRIORITY_NORMAL

  • THREAD_PRIORITY_BELOW_NORMAL

  • THREAD_PRIORITY_LOWEST

  • THREAD_PRIORITY_IDLE

Untuk informasi selengkapnya tentang prioritas ini, lihat SetThreadPriority di Windows SDK.

Tampilkan Nilai

Bukan nol jika fungsi berhasil; jika tidak, 0.

Keterangan

Ini hanya dapat dipanggil setelah CreateThread berhasil dikembalikan.

CWinThread::SuspendThread

Menaikkan jumlah penangguhan utas saat ini.

DWORD SuspendThread();

Tampilkan Nilai

Jumlah penangguhan utas sebelumnya jika berhasil; 0xFFFFFFFF Sebaliknya.

Keterangan

Jika ada utas yang memiliki jumlah ditangguhkan di atas nol, utas tersebut tidak dijalankan. Utas dapat dilanjutkan dengan memanggil ResumeThread fungsi anggota.

Lihat juga

CCmdTarget Kelas
Bagan Hierarki
CWinApp Kelas
CCmdTarget Kelas