迎面一個小例子

來源:互聯網
上載者:User

標籤:style   blog   io   ar   color   os   sp   for   div   

#include <stdio.h>#include <windows.h>DWORD WINAPI ThreadFunc (LPVOID);int main (){    std::ios::sync_with_stdio(false);    HANDLE hThrd = NULL;    DWORD threadId = 0;    //無法預測結果, 執行次序無法保證    //因為 task switch 隨時可能發生    for (int i = 0; i < 5; ++i)    {        /*            //傳回兩個值, 第一個值是 HANDLE, 這也是它的傳回值, 跟線程有關的 API 都與它有關            HANDLE CreateTHread(                LPSECURITY_ATTUIBUTES 
            ipThreadAttributes, //新線程的安全屬性(NULL 意為預設) DWORD dwStackSize, //新線程預設的堆棧大小 LPTHREAD_START_ROUTINE
            ipStartAddress, //新線程的起始地址, 存放一個指標 LPVOID ipParameter, //此值將被傳入新線程中, 作為參數 DWORD dwCreatinFlags, //允許產生一個暫時掛起的線程, 預設是立即開始執行 LPDWORD ipThreadId //新線程的 id, 是一個全域變數, 可以獨一無二的表示系統任意進程的某個線程 ); */ //新線程 hThrd = CreateThread (NULL, 0, ThreadFunc, (LPVOID) i, 0, &threadId); //主線程 if (hThrd) { printf ("Thread launched %d \n", i); } } //等待線程 hThrd, 防止它提前結束 Sleep (2000); return EXIT_SUCCESS;}DWORD WINAPI ThreadFunc (LPVOID n){ for (int i = 0; i < 10; ++i) { printf ("%d%d%d%d%d%d%d%d\n", n, n, n, n, n, n, n, n); } return 0;}

 

迎面一個小例子

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.