基於windows win32 Console App的多線程小例子

來源:互聯網
上載者:User
/*這是一個多線程編程的簡單一實例。首先,建立一個win32 Console App,其次,確認如下設定:      project->property->Configuration Properties      ->C/C++->Code Generation->Runtime Library->Multi-thread DLL(/MD)*/    #include<stdafx.h>    #include <stdio.h>      #include <stdlib.h>      #include <windows.h>            typedef struct thread_param{          int threadno;          char str[20];      }T_PARAM;            void * myFunc(T_PARAM *ww);            int main(int argc,char *argv[])      {          int i = 0;          HANDLE  h_thread[20];          T_PARAM *myparas;          T_PARAM *mypara;          char str[]="test";                myparas = (T_PARAM *)malloc(sizeof(T_PARAM)*20);          if(myparas == NULL)          {              printf("Malloc Error!\n");              return -1;          }          memset(myparas,0,sizeof(T_PARAM)*20);                for(i = 0;i<20;i++)          {              mypara = myparas + i;              mypara->threadno = i;              strcpy(mypara->str,str);                    h_thread[i] = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)myFunc,(LPVOID)mypara,0,NULL);              if(h_thread[i] == NULL)              {                  printf("Thread No[%d] Start Failed!\n",i);                  return -2;              }          }                  for(i = 0;i<20;i++)          {              WaitForSingleObject(h_thread[i],INFINITE);              CloseHandle(h_thread[i]);          }                  free(myparas);          printf("Excl Suc!!!\n");          return 0;      }            void * myFunc(T_PARAM *ww)      {  printf("%d\n",ww->threadno);        return 0;      }  

註:參考引用文章:windows多線程執行個體 。謝謝其作者-- NowDoIT

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.