当前位置:嗨网首页>书籍在线阅读

19-监测Semaphore类

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

10.6 监测Semaphore类

信号量是一种计数器,能对一个或多个共享资源的访问进行保护。

Edsgar Dijkstra 在1965年提出了信号量的概念,信号量第一次使用是在THEOS操作系统中。

当线程要使用共享资源时,它必须获取一个信号量。如果信号量内部的计数器值大于0,则信号量会递减该值并允许线程访问共享资源。如果信号量的计数器值等于0,则信号量就会阻塞线程直到该值大于0。当线程结束使用共享资源时,必须释放信号量。具体的操作就是递增信号量内部的计数器值。

Java中的信号量实现类是 Semaphore 类。

本节将介绍信号量的状态信息,以及如何获取它。