java API 学习2 Deque,SortedSet,Semaphore

来源:互联网 发布:查找两个表格相同数据 编辑:程序博客网 时间:2024/06/06 19:41

1.Deque

双向队列。可以实现Queue和Stack的功能。每个方法有两种形式,一种是在发生错误返回一个值(如null或false),一种是发生错误抛出异常,如下图所示,

实现Queue(FIFO)功能

实现Stack(LIFO)功能


2.SortedSet

E first();获得最小元素

E last();获得最大元素

SortedSet<E> headSet(E toElement);获得比toElemen小的所有元素

SortedSet<E> tailSet(E fromElement);获得所有大于等于fromElement的元素

SortedSet<E> subSet(E fromElement,E toElement);.获得所有大于等于fromElement而小于toElement的元素


3. Semaphore

该类通常是最为一个限制资源访问的记数的变量。

acquire()可以去请求获得资源,若没有可用资源就阻塞,该线程interrupted会取消阻塞



acquire(int permits)

acquireUninterrubtily()可以去请求获得资源,若没有可用资源就阻塞,该线程interrupted也不会取消阻塞

tryAcquire()尝试获得资源。没有也不会阻塞

tryAcquire(int permits)尝试获得permits个资源,没有不阻塞

release()释放一个资源,这时会释放一个正在阻塞的资源获取者。

release(int permits)释放permits个资源

hasQueuedThreads()是否有线程等待获取资源


1 0
原创粉丝点击