线程控制之线程限制

http://www.cnblogs.com/nufangrensheng/p/3496323.html中讨论了sysconf函数,Single UNIX Specification定义了与线程操作有关的一些限制。与其他的系统限制一样,这些线程限制也可以通过sysconf函数进行查询。表12-1总结了这些限制。

表12-1 线程限制和sysconf的name参数

  限制名称  描述  name参数
  PTHREAD_DESTRUCTOR_ITERATIONS  线程退出时操作系统实现试图销毁线程私有数据的最大次数  _SC_THREAD_DESTRUCTOR_ITERATIONS
  PTHREAD_KEYS_MAX  进行可以创建的键的最大数目  _SC_THREAD_KEYS_MAX
  PTHREAD_STACK_MIN  一个线程的栈可用的最小字节数  _SC_THREAD_STACK_MIN
  PTHREAD_THREADS_MAX进行可以创建的最大线程数  _SC_THREAD_THREADS_MAX

 

与sysconf报告的其他限制一样,这些限制的使用是为了增强应用程序在不同操作系统实现之间的可移植性。

表12-2给出了四种操作系统实现中线程限制的值。当某些操作系统实现没有定义相应的sysconf符号(以_SC_开头)时,图中列出的值就是“未定义符号”;如果操作系统实现的限制是不确定的,列出的值就是“没有确定的限制”,但这并不意味着值是无限制的;“不支持”表明操作系统实现定义了相应的sysconf限制符号,但是sysconf函数无法识别这个符号。

注意,虽然某些操作系统实现可能没有提供访问这些限制的方法,但这并不意味着这些限制不存在,它只是表明操作系统实现没有提供使用sysconf访问这些值的方法。

表12-2 线程配置限制的例子

  限制  FreeBSD 5.2.1  Linux 2.4.22  Mac OS X 10.3  Solaris 9
  PTHREAD_DESTRUCTOR_ITERATIONS  未定义符号  不支持  未定义符号  没有确定的限制
  PTHREAD_KEYS_MAX  未定义符号  不支持  未定义符号  没有确定的限制
  PTHREAD_STACK_MIN  未定义符号  不支持  未定义符号  4096
  PTHREAD_THREADS_MAX  未定义符号  不支持  未定义符号  没有确定的限制

本篇博文内容摘自《UNIX环境高级编程》(第二版),仅作个人学习记录所用。关于本书可参考:http://www.apuebook.com/

转载于:https://www.cnblogs.com/nufangrensheng/p/3522577.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值