最新文章列表

并行计算学习之Pthread

1.线程与进程      相对进程而言,线程是一个更加接近于执行体的概念,它可以与同进程中的其他线程共享数据,但拥有自己的栈空间,拥有独立的 ...
孤狼18 评论(0) 有1121人浏览 2016-04-14 13:53

内存分配出错

    最近遇到一个非常有意思的bug,程序总是在 list.push_back() 这行崩溃。代码如下:      // 初始化线程池 void init_threads( int m_thread_number ) { thread_t *m_threads; m_threads = new pthread_t(m_thread_number); assert ...
tcspecial 评论(0) 有1085人浏览 2014-12-08 16:37

linux pthread detach 和 joinable属性

这两天在看Pthread 资料的时候,无意中看到这样一句话(man pthread_detach): Either pthread_join(3) or pthread_detach() should be called for each thread that an application creates, so that system resources for the ...
gotowqj 评论(0) 有2456人浏览 2013-11-15 16:14

linux c学习笔记----线程同步

1.互斥量 互斥变量用pthead_mutex_t数据类型来表示,在使用互斥变量之前,必须首先对它进行初始化,可以把它置为常量PTHREAD_MUTEX_INITIALIZER(只对静态分配的互斥量),也可以能过调用pthread_mutex_init函数进行初始化。如果动态地分配互斥量(例如通过调用malloc)函数,那么释放内存前需要使用pthread_mutex_destroy. ...
home198979 评论(0) 有3022人浏览 2012-12-28 17:49

linux c学习笔记----线程创建与终止

进程原语 线程原语 描述 fork pthread_create 创建新的控制流 exit pthread_exit 从现有的控制流中退出 waitpid pthread_join 从控制流中得到退出状态 atexit pthread_cancel_push 注册在退出控制流时调用的函数 getpid pthread_self 获取控 ...
home198979 评论(0) 有13718人浏览 2012-12-14 17:32

Linux pthread线程同步相关的API学习

原因 最近在深入理解Dalvik虚拟机的内部线程控制体系,其中涉及大量pthread的相关操作,现在统一浏览一下。   #include gcc -lpthread xxx.c -o xxx.out 主要API: 标识 int pthread_equal(pthread_t tid1, pthread_t tid2);//若相等则返回非0值,否则返回0 pthread_t pthre ...
qianjigui 评论(0) 有1466人浏览 2012-11-12 18:43

pthread_mutex实现进程间同步

   前面实验室的师兄们在讨论pthread这套接口能不能实现进程间同步,自己对这个不是十分地了解,但是对这个比较感兴趣,于是就在实验室师兄的指导下去实现了这个同步机制。    测试的结果就是可以用pthread_mutex_t来实现进程间的同步。    需要注意的是初始化 mutex 时需要指定 PTHREAD_PROCESS_SHARED 这个属性,代码如下 pthread_mutexa ...
peng_wp 评论(0) 有11574人浏览 2012-08-01 23:57

创建多线程做减法

师父给出了另外一道题: 给一个数,然后开5个线程对它进行相减,直到这个数为0或小于0为止; 我用多线程实现如下: // methods.c #include <stdio.h> #include <pthread.h> #include <stdlib.h> int sum; static pthread_mutex_t mutex = P ...
zhou347742 评论(0) 有1110人浏览 2012-05-26 22:40

CDT中添加非标准链接库

CDT为Eclipse的一款专为C/C++开发所用的插件,功能非常强大,也非常好用。   在使用CDT开发C的时候,很多情况下会用到非标准库,一般的工程设置不会自动添加相关的库链接,比如使用pthread.h来开发多线程的程序,在手工编译使用gcc的时候需要加上 -lpthread,而在使用CDT的时候编译过程是在Eclipse当中的,此时创建线程会报“undefined rererence to ...
qiang106 评论(0) 有2723人浏览 2012-02-17 19:24

用一个小例子来解释pthread_join

在学习pthread的时候,pthread_join这个函数的理解恐怕让很多人迷惑,这里我们用一个例子来示范一下: #include <iostream> #include <pthread.h> using namespace std; #define TOTAL 10 int sumarray[TOTAL]; void *PartSum( ...
hankgong 评论(0) 有3722人浏览 2012-01-11 06:41

c++ 双线程协议解析 链表 sleep pthread_join g++编译

主类 testlinklist.cpp #include <stdio.h> #include "LinkList.h" #include <pthread.h> #include <stdlib.h>  #include <sys/time.h> #include   <cstring> #include < ...
anson_xu 评论(0) 有1703人浏览 2011-10-25 11:37

浅析pthread_cond_wait

浅析pthread_cond_wait 条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待"条件变量的条件成立"而挂起;另一个线程使"条件成立"(给出条件成立信号)。为了防止竞争,条件变量的使用总是和一个互斥锁结合在一起。 一 pthread_cond_wait定义: 函数原型:int   pthread_cond_wa ...
weihe6666 评论(2) 有16230人浏览 2011-09-11 16:01

Linux C线程池实现

三个文件   1 tpool.h typedef struct tpool_work { void (*routine)(void *); void *arg; struct tpool_work *next; } tpool_work_t; typedef struct tpool { ...
kenby 评论(0) 有4853人浏览 2011-09-08 00:06

pthread线程的同步问题

1 互斥变量: pthread_mutex_t,本质上说是一把锁,在访问共享资源前对互斥量加锁,访问完成后释放锁。    对互斥量进行加锁后,任何其他试图再次对互斥量加锁的线程将会被阻塞直至当前线程释放该互斥锁。 pthread_mutex_lock : 加锁 pthread_mutex_unlock:解锁 2 条件变量:pthread_cond_t,多个线程协作的一种同步方式,若某个条 ...
kenby 评论(0) 有3360人浏览 2011-04-15 20:01

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics