码迷,mamicode.com
首页 > 其他好文 > 详细

迎面一个小例子

时间:2014-11-27 14:10:48      阅读:112      评论:0      收藏:0      [点我收藏+]

标签: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; }

 

迎面一个小例子

标签:style   blog   io   ar   color   os   sp   for   div   

原文地址:http://www.cnblogs.com/wuOverflow/p/4126097.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!