#include <stdio.h>
#include <process.h>
#include <windows.h>
unsigned int __stdcall ulMyTread1(void* p)
{
int i = *((int*)p);
while(i--)
{
printf("ggyy\n");
Sleep(1);
}
}
unsigned int __stdcall ulMyTread2(void* p)
{
int i = *((int*)p);
while(i--)
{
printf("abcd\n");
Sleep(1);
}
}
int main(int argc, char* argv[])
{
int n = 10;
printf("n:0x%.8x\n", &n);
HANDLE handle1 = (HANDLE)_beginthreadex(NULL, 0, &ulMyTread1, (void*)(&n), 0, NULL);
HANDLE handle2 = (HANDLE)_beginthreadex(NULL, 0, &ulMyTread2, (void*)(&n), 0, NULL);
Sleep(5000);
printf("%d\n", sizeof(int));
return 0;
}
本文通过一个C语言编写的简单示例介绍了如何使用_beginthreadex函数创建两个并发线程,并让它们交替打印不同的字符串。该示例展示了基本的线程同步技巧,包括共享变量的使用以及线程间的基本调度。
1338

被折叠的 条评论
为什么被折叠?



