pthread_join 函数是会阻塞主线程的,这会让很多java程序员不适应。因为在java中
start以后一个线程就执行执行了。主线程不会被阻塞。而在linux中 join是会阻塞的。那么如何使用join的时候
不阻塞主线程呢。我给出了一个解决方法。#include #include void...
分类:
编程语言 时间:
2014-05-24 05:59:40
阅读次数:
571
linux下实现多线程有两种函数调用:一种是通过pthread.h里面已经封装好的函数调用,另一种是通过unistd.h里面的fork函数调用。前面已经已经列举了pthread的使用,下面来书fork的例子。
一.fork函数
简单的fork例子
#include
#include
#include
using namespace std;
int main()
{...
分类:
编程语言 时间:
2014-05-23 07:59:41
阅读次数:
395
设置文件的flags,阻塞设置成非阻塞,非阻塞设置成阻塞(这连个在server开发中可以封装为基本函数)线程引入pthread_self和pthread_equal原因——解决不同平台的问题!Mysql索引__索引的分类_索引的创建_使用alter建立索引(也可以在创建表时设定)、索引的分类fcnt...
分类:
其他好文 时间:
2014-05-19 20:48:37
阅读次数:
415
pthread_cond_signal函数的作用是发送一个信号给另外一个正在处于阻塞等待状态的线程,使其脱离阻塞状态,继续执行.如果没有线程处在阻塞等待状态,pthread_cond_signal也会成功返回。但使用pthread_cond_signal不会有“惊群现象”产生,他最多只给一个线程发信...
分类:
系统相关 时间:
2014-05-19 08:37:01
阅读次数:
366
这周有位新同事请我帮忙看一个关于信号处理的问题,程序希望在收到一个信号后退出,而他在信号处理方法里却做了许多事,包括释放一些全局内存等。这样问题就产生了,程序不定时的就挂死了,用gdb一看,所有的线程都挂在了pthread_once方法里,而似乎每个线程都在处理信号,其中产生问题的线程堆栈如下:Thread 1 (Thread 0x7f41252f3720 (LWP 31542)):#0 0x00...
分类:
其他好文 时间:
2014-05-15 19:33:14
阅读次数:
248
当进程中的某一个线程调用了exit、_Exit、_exit,那么整个进程会终止。同样,一个信号发送到某个线程,而该信号的默认动作是终止,整个进程也会终止。
单个进程的终止有三种方法:
从程序正常返回。线程自身调用pthread_exit。被同一进程中的其它线程取消。
先来看看前两种情况。
void pthread_exit(void *rval_ptr); // 退...
分类:
编程语言 时间:
2014-05-14 15:13:07
阅读次数:
428
提要:Windows
多线程Helloworld以Windows代码为例,分析多线程编程中易出现的问题Windows多线程的Helloworld:
笔者写过Java多线程的程序(实现Runnable接口,利用Thread类执行),也写过Linux多线程程序(利用pthread)。最近由于另有需要使....
分类:
编程语言 时间:
2014-05-14 12:04:09
阅读次数:
430
1.安装vsftpd+mysql+pam后ftp服务器只允许匿名登录,当使用本地用户和虚拟用户登录时出现以下错误(vsftpd配置没有问题):
libgcc_s.so.1 must be installed for pthread_cancel to work
分类:
其他好文 时间:
2014-05-13 23:46:42
阅读次数:
379
前言:
多线程程序中,特别是频繁申请,释放线程的情况下,就要注意线程的关闭,最好使用线程池。
一,线程退出方式
(1) 执行完成后隐式退出;
(2) 由线程本身显示调用pthread_exit 函数退出;
pthread_exit (void * retval) ;
(3) 被其他线程用pthread_c...
分类:
编程语言 时间:
2014-05-13 16:22:59
阅读次数:
286
看到很多程序都是根据CPU个数来创建线程个数,当时很不理解他们之间的关系,咨询了项目组的同事后才有了大致了解。1.相关系统函数下面的函数可以通过man命令查询到。SYNOPSIS
#define_GNU_SOURCE
#include<pthread.h>
intpthread_setaffinity_np(pthread_tthread,size_tc..
分类:
编程语言 时间:
2014-05-13 04:08:00
阅读次数:
450