Boundedbuffer

来源:互联网 发布:peterson算法 编辑:程序博客网 时间:2024/06/05 16:26

Boundedbuffer

public void put(int key,Object object)以及public Object take(int key,int outtime)方法用法及解释

从本地把数据发送到(通过广播)超级服务,超级服务对数据进行操作(例如加密)之后会把数据返回到(也是通过广播)本地,本地接收到数据之后,通过put方法,把数据存到Object object中,存好了之后,take方法会把put进去的数据取出来,前提是必须在阻塞时间outtime之内,不然take取出来的数据就为null。

阻塞时间outtime:表示程序运行到take(int key,int outtime)时,此线程最多等待的时间。如果outtime为10000ms,而在2000ms之后就把数据put到object中,那么take就会立马把object取出来,然后继续take方法之后的操作,此种情况之下,总共只等了2000s,没有等10000ms;如果是在10000ms时还没有执行数据的put操作,那么take还是会去取数据,取完之后继续take方法之后的操作,但只是取出来的是object等于null。这就好像朋友打电话叫你等她一起去吃饭,你和她说,我最多等你20分钟,如果她第十分钟的时候出现了,那么你们就可以在第十分钟的时候继续下一步操作,也就是去吃饭;如果她在第二十分钟还没出现,那么你就没有继续再等她,而是一个人先去吃饭了。


0 0
原创粉丝点击