易截截图软件、单文件、免安装、纯绿色、仅160KB

linux多线程学习(三)——互斥锁线程控制

 在前面的文章中提及到,一个进程中的多个线程是共享同一段资源的,由于线程对资源的竞争引出了锁。其中mutex是一种简单的加锁方法,这个互斥锁只有两种状态,那就是上锁和解锁,可以把互斥锁看作是某种意义上的全局变量。在某一时刻,只能有一个线程取得这个互斥上的锁,拥有上锁状态的线程可以对共享资源进行操作,而其他线程在该线程未解锁之前,够会被挂起,直到上锁的线程解开锁。可以这么说,互斥锁使得共享资源按序的在各个线程上操作。
互斥锁的操作主要包括互斥锁初始化、上锁、判断上锁、解锁、摧毁互斥锁。其中互斥锁可以分为快速互斥锁、递归互斥锁这检错互斥锁。这三种锁的区别主要在于其他未占有互斥锁的线程在希望得到互斥锁时是否需要等待挂起。快速锁是指调用线程会阻塞直到线程锁得到解锁为止。递归锁能够成功地返回并且增加调用线程在互斥上的加锁次数,比如一个链表在进行插入的操作时,可以进行查找的操作。检错锁则为快速互斥锁的非阻塞版本,它会立即返回并返回一个错误的信息。
1、函数简义。
(1)pthread_mutex_init
头文件:                  <pthread.h>
函数原型:               int pthread_mutex_init (pthread_mutex_t* mutex,
                                                                         const pthread_mutexattr_t* mutexattr);
函数传入值:            mutex:互斥锁。
                              mutexattr:PTHREAD_MUTEX_INITIALIZER:创建快速互斥锁。
      &nbs


相关文档:

Linux下CHM查看工具汇总

 Linux下CHM查看工具汇总

http://www.ossw.com.cn/bbs/bencandy.php?id=2252&l_page=1


1. chmsee

homepage: http://211.92.88.40/~zhong/

requires: gtkhtml, libgnomevfs
......

Linux下java相关配置 tomcat mysql jdk

 最近有个项目要部署到linux上,在网上查了些资料,记下点遇到的问题,以便将来再用。
一:jdk安装
1.通过chmod a+x jdk-1_5_x-rc-linux-i586-rpm.bin命令使其获得可执行权限
2.通过 rpm –ivh jdk-1_5_x-rc-linux-i586-rpm.bin来进行安装
3.安装完毕,JDK安装在/usr/java/目录下
4.设置环境变量(写入vi/etc/ ......

使用sha256(512)算法加密linux密码

Linux帐户的密码加密后存放于/etc/shadow文件中。对于Redhat Enterprise版本,默认使用MD5算法,这个算法已经很不安全。很多经典的黑客教程都是教人拿到shadow文件后回去破解出root的密码,如果能用更难破解的sha算法加密密码无疑可以提高服务器的安全性。以下内容是综合了http://www.cyberciti.biz/faq/rhel-centos-fedora ......

Linux中的shell命令参数详解

命令行
     用户登录到Linux系统时,可以看到一个shell提示符,标识了命令行的开始。用户可以在提示符后面输入任何命令及参数。例如:
  
  $ date
  
  二 11 23 01:34:58 CST 1999 
  
  $ 
  
  用户登录时,实际进入了shell,它遵循一定 ......

Linux网管笔记(32):Linux下的VPN服务器轻松打造

    最近,有个朋友老是问VPN的事情。结合我的体会,算是给他准备一个专题文章吧。 1.到底什么是VPN
VPN的英文全称是“Virtual Private Network”,翻译过来就是“虚拟专用网络”。顾名思义,虚拟专用网络我们可以把它理解成是虚拟出来的企业内部专线。它可以通过特殊的加密的通讯协议在连接在Internet ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号