本文整理了Java中java.util.concurrent.LinkedBlockingDeque.takeFirst()
方法的一些代码示例,展示了LinkedBlockingDeque.takeFirst()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。LinkedBlockingDeque.takeFirst()
方法的具体详情如下:
包路径:java.util.concurrent.LinkedBlockingDeque
类名称:LinkedBlockingDeque
方法名:takeFirst
暂无
代码示例来源:origin: robovm/robovm
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: apache/hbase
/**
* Behaves as {@link LinkedBlockingQueue#take()}, except it will silently
* skip all calls which it thinks should be dropped.
*
* @return the head of this queue
* @throws InterruptedException if interrupted while waiting
*/
@Override
public CallRunner take() throws InterruptedException {
CallRunner cr;
while(true) {
if (((double) queue.size() / this.maxCapacity) > lifoThreshold) {
numLifoModeSwitches.increment();
cr = queue.takeLast();
} else {
cr = queue.takeFirst();
}
if (needToDrop(cr)) {
numGeneralCallsDropped.increment();
cr.drop();
} else {
return cr;
}
}
}
代码示例来源:origin: MobiVM/robovm
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: ibinti/bugvm
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: com.mobidevelop.robovm/robovm-rt
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: com.gluonhq/robovm-rt
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: com.bugvm/bugvm-rt
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: org.apidesign.bck2brwsr/emul
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: org.codehaus.jsr166-mirror/jsr166
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: jtulach/bck2brwsr
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: FlexoVM/flexovm
public E take() throws InterruptedException {
return takeFirst();
}
代码示例来源:origin: numenta/htm.java
/**
* Returns the item at the head of this {@code Deque} or null
* if it is empty. This call does not block if empty.
*
* @return item at the head of this {@code Deque} or null
* if it is empty.
*/
public E takeFirst() {
if(currentSize == 0) return null;
E val = null;
try {
val = backingList.takeFirst();
currentSize--;
}catch(Exception e) { e.printStackTrace(); }
return val;
}
代码示例来源:origin: numenta/htm.java
/**
* Returns the item at the head of this {@code Deque}, blocking
* until an item is available.
*
* @return item at the tail of this {@code Deque}
*/
public E head() {
E val = null;
try {
val = backingList.takeFirst();
currentSize--;
}catch(Exception e) { e.printStackTrace(); }
return val;
}
代码示例来源:origin: tony19/logback-android
private void awaitStartOfEventDispatching() throws InterruptedException {
verify(deque, timeout(TIMEOUT)).takeFirst();
}
代码示例来源:origin: PvdBerg1998/PNet
private void asyncSenderThreadImpl()
{
logger.debug("Async sender thread started");
while (!asyncSenderQueue.isEmpty())
{
try
{
final AsyncPacket asyncPacket = asyncSenderQueue.takeFirst();
asyncPacket.onComplete(client.send(asyncPacket.getPacket()));
}
catch (final InterruptedException e)
{
asyncSenderQueue.clear();
break;
}
}
logger.debug("Async sender thread stopped");
}
代码示例来源:origin: tony19/logback-android
@Test
public void shutsDownOnInterruptWhileWaitingForEvent() throws Exception {
// given
mockOneSuccessfulSocketConnection();
doThrow(new InterruptedException()).when(deque).takeFirst();
// when
appender.start();
// then
verify(deque, timeout(TIMEOUT)).takeFirst();
}
代码示例来源:origin: tony19/logback-android
@Test
public void dispatchesEvents() throws Exception {
// given
ServerSocket serverSocket = ServerSocketUtil.createServerSocket();
instrumentedAppender.setRemoteHost(serverSocket.getInetAddress().getHostAddress());
instrumentedAppender.setPort(serverSocket.getLocalPort());
instrumentedAppender.start();
Socket appenderSocket = serverSocket.accept();
serverSocket.close();
// when
instrumentedAppender.append("some event");
// wait for event to be taken from deque and being written into the stream
verify(deque, timeout(TIMEOUT).atLeastOnce()).takeFirst();
verify(objectWriter, timeout(TIMEOUT)).write("some event");
// then
ObjectInputStream ois = new ObjectInputStream(appenderSocket.getInputStream());
assertEquals("some event", ois.readObject());
appenderSocket.close();
}
代码示例来源:origin: tony19/logback-android
@Test
public void takesEventsFromTheFrontOfTheDeque() throws Exception {
// given
mockOneSuccessfulSocketConnection();
appender.start();
awaitStartOfEventDispatching();
// when
appender.append("some event");
// then
verify(deque, timeout(TIMEOUT).atLeastOnce()).takeFirst();
}
代码示例来源:origin: NightscoutFoundation/xDrip
private static String httpNext() {
if (queue.peekFirst() == null) return null;
try {
final QueueItem item = queue.takeFirst(); // removes from queue
item.retried++;
item.updateLastProcessed();
UserError.Log.d(TAG, "Next item: " + item.toS());
final String result = httpGet(item.getUrl(Home.get_follower() ? item.handler != MasterPing ? getOasisIP() : null : null));
// if (result != null) {
item.result = result;
item.handler.process(item);
// }
if (result != null || item.expired()) {
queue.remove(item);
} else {
// queue.add(item); // re-add
}
return result;
} catch (InterruptedException e) {
UserError.Log.e(TAG, "Got interrupted");
return null;
}
}
代码示例来源:origin: jamorham/xDrip-plus
private static String httpNext() {
if (queue.peekFirst() == null) return null;
try {
final QueueItem item = queue.takeFirst(); // removes from queue
item.retried++;
item.updateLastProcessed();
UserError.Log.d(TAG, "Next item: " + item.toS());
final String result = httpGet(item.getUrl(Home.get_follower() ? item.handler != MasterPing ? getOasisIP() : null : null));
// if (result != null) {
item.result = result;
item.handler.process(item);
// }
if (result != null || item.expired()) {
queue.remove(item);
} else {
// queue.add(item); // re-add
}
return result;
} catch (InterruptedException e) {
UserError.Log.e(TAG, "Got interrupted");
return null;
}
}
内容来源于网络,如有侵权,请联系作者删除!