| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 399 人关注过本帖
标题:  求代码解释关于 线程的一些问题
取消只看楼主 加入收藏
钓鱼执法
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2015-1-17
结帖率:0
收藏
已结贴  问题点数:20 回复次数:0 
  求代码解释关于 线程的一些问题
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <pthread.h>

#define NT         16

pthread_mutex_t  mutt;//

int sum = 0;

void *worker(void *p);

int main(int arg, char *argv[])
{
  pthread_t thid[NT];//
  int id[NT];
  int i;

  for(i=0;i<NT;i++)
    id[i] = i;
  pthread_mutex_init(&mutt, 0);//
  for(i=0;i<NT;i++)
    pthread_create(&thid[i], 0, (void *) worker, (void *) &id[i]);//

  for(i=0;i<NT;i++)
    pthread_join(thid[i], 0);//

  printf("%d\n", sum);
}
void *worker(void *p)
{
  int i,tmp;

  pthread_mutex_lock(&mutt);//
  tmp = sum;
  for(i=0;i<1000;i++)
    ;
  tmp++;
  sum = tmp;
  pthread_mutex_unlock(&mutt);//
  return;
}
这个学期学习unix系统,线程这一块我没听懂。希望会的大神能给我解释下我标记//代码的意思。我在网上查了查资料,自己大概有些印象,但是还是希望朋友们能给我指点一下让我有个印证。谢谢大家。这绝不是作业帖,谢谢。
搜索更多相关主题的帖子: include 
2015-02-01 14:21
快速回复:  求代码解释关于 线程的一些问题
数据加载中...
 
   



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

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