可以获取设置超时的信号量,然后使用一行代码释放它?

时间:2013-10-29 09:10:40

标签: java semaphore

有没有办法在短时间内获得Semaphore然后在该时间间隔之后释放它,只需一行代码?查看信号量文档http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Semaphore.html我没有看到,但我不熟悉所有术语。

或者,在TimerTask运行时是否有另一种获取信号量的方法,然后自动释放它?

1 个答案:

答案 0 :(得分:0)

您可以使用try-with-resources变体:try (Foo foo = new Foo();) { ... },对象Foo()的构造函数获取信号量,foo.close()方法释放信号量。