| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 687 人关注过本帖
标题:好久没发贴了 发一个演示多线程的C语言代码吧
只看楼主 加入收藏
lwb603569640
Rank: 6Rank: 6
等 级:侠之大者
威 望:2
帖 子:283
专家分:436
注 册:2012-11-9
结帖率:100%
收藏
 问题点数:0 回复次数:7 
好久没发贴了 发一个演示多线程的C语言代码吧
程序代码:
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>

void *functiony( void *ptr );
void *functionx( void *ptr );

int a, b, c;
main()
{
     pthread_t thread1, thread2;
     char *message1 = "Thread 1";
     char *message2 = "Thread 2";
     int  iret1, iret2;

    /* Create independent threads each of which will execute function */

     iret1 = pthread_create( &thread1, NULL, functiony, (void*) message1);
     iret2 = pthread_create( &thread2, NULL, functionx, (void*) message2);

     /* Wait till threads are complete before main continues. Unless we  */
     /* wait we run the risk of executing an exit which will terminate   */
     /* the process and all threads before the threads have completed.   */

     pthread_join( thread1, NULL);
     pthread_join( thread2, NULL);

     printf("\nThread 1 returns: %d\n",iret1);
     printf("Thread 2 returns: %d\n",iret2);
     printf("c = %d\n",a+b);
     exit(0);
}

void *functiony( void *ptr )
{
     char *message;
     message = (char *) ptr;
     printf("%s \n", message);
     a=1;
     while(a<=99)
     {
        printf("/");
        a++;
     }
}

void *functionx( void *ptr )
{
     char *message;
     message = (char *) ptr;
     printf("%s \n", message);
     b=1;
     while(b<=99)
     {
        printf(".");
        b++;
    }
}


从输出的.和/能看出线程的执行状态。。。
搜索更多相关主题的帖子: color C语言 多线程 ptr 
2013-06-02 14:24
我叫沃恩
Rank: 12Rank: 12Rank: 12
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
注 册:2013-3-29
收藏
得分:0 
赞一个!不过楼主用什么编译器?VC6.0好像没有#include <pthread.h>这个库函数!

因为我是菜鸟,所以应该被骂! 细节+坚持=成功!
2013-06-02 20:12
lwb603569640
Rank: 6Rank: 6
等 级:侠之大者
威 望:2
帖 子:283
专家分:436
注 册:2012-11-9
收藏
得分:0 
可以用  vs c++编译
下载几个pthread相关文件就行了

自由、民主、宪政!
2013-06-03 08:47
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
收藏
得分:0 
还是main()....
2013-06-03 09:34
搁浅0
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-6-3
收藏
得分:0 
很好
2013-06-03 10:45
Alar30
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:10
帖 子:988
专家分:1627
注 册:2009-9-8
收藏
得分:0 
LZ一发就来高端的啊
2013-06-03 10:52
lwb603569640
Rank: 6Rank: 6
等 级:侠之大者
威 望:2
帖 子:283
专家分:436
注 册:2012-11-9
收藏
得分:0 
回复 4楼 hahayezhe
额,好吧我承认我偷懒了。。

自由、民主、宪政!
2013-06-04 13:25
lwb603569640
Rank: 6Rank: 6
等 级:侠之大者
威 望:2
帖 子:283
专家分:436
注 册:2012-11-9
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册

自由、民主、宪政!
2013-06-04 13:32
快速回复:好久没发贴了 发一个演示多线程的C语言代码吧
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017380 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved