多线程测试
#include <stdio.h>
#include <pthread.h>
void *Thread1(void *arg)
{
printf("线程1:");
int n = 0;
int A[10] = {-1};
int Temp = -1;
while (n<10)
{
Temp= rand()%100;
if(Temp%2 == 0)
{
A[n] = Temp;
}
else
{
A[n] = Temp +1;
}
n++;
}
for(int i=0;i<10;i++)
{
printf("%d ",A[i]);
}
printf("\n");
return "Thread1成功执行";
}
void* Thread2(void* arg)
{
printf("线程2:");
int n = 0;
int A[10] = {-1};
int Temp = -1;
while (n<10)
{
Temp= rand()%100;
if(Temp%2 == 1)
{
A[n] = Temp;
}
else
{
A[n] = Temp +1;
}
n++;
}
for(int i=0;i<10;i++)
{
printf("%d ",A[i]);
}
printf("\n");
return "Thread1成功执行";
}
int main()
{
int res;
pthread_t mythread1, mythread2;
void* thread_result;
res = pthread_create(&mythread1, NULL, Thread1, NULL);
if (res != 0) {
printf("线程创建失败");
return 0;
}
res = pthread_create(&mythread2, NULL, Thread2, NULL);
if (res != 0) {
printf("线程创建失败");
return 0;
}
res = pthread_join(mythread1, &thread_result);
printf("%s\n", (char*)thread_result);
res = pthread_join(mythread2, &thread_result);
printf("%s\n", (char*)thread_result);
printf("主线程执行完毕\n");
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)