Java LinkedTransferQueue take()方法

Java LinkedTransferQueue take()方法

java.util.concurrent.LinkedTransferQueue.take() 方法是Java中的一个内置函数,它检索并删除队列中的第一个元素。这个方法也会等待(如果需要的话),直到有元素可用。

语法

LinkedTransferQueue.take()  

参数: 该函数不接受任何参数。

返回值: 该函数返回队列的第一个元素。

异常: 如果在等待时被打断,该函数会抛出InterruptedException。

下面的程序说明了java.util.concurrent.LinkedTransferQueue.take()的情况。

程序1 :

// Java Program Demonstrate take()
// method of LinkedTransferQueue 
  
import java.util.concurrent.LinkedTransferQueue;
  
class LinkedTransferQueueTakeExample1 {
    public static void main(String[] args) throws Exception
    {
        // Initializing the queue
        LinkedTransferQueue<String> queue = 
                        new LinkedTransferQueue<String>();
  
        // Adding elements to this queue
        queue.add("Alex");
        queue.add("Bob");
        queue.add("Chuck");
        queue.add("Drake");
        queue.add("Eric");
  
        // Printing the elements
        System.out.println("Elements are :");
        for (String xyz : queue) {
            // will take and remove the head of the queue
            System.out.println(queue.take());
        }
  
        // Printing the size of the Queue
        System.out.println("Queue Size: " + queue.size());
    }
}

输出:

Elements are :
Alex
Bob
Chuck
Drake
Eric
Queue Size: 0

示例2

// Java Program Demonstrate take()
// method of LinkedTransferQueue 
  
import java.util.concurrent.LinkedTransferQueue;
  
class LinkedTransferQueueTakeExample2 {
    public static void main(String[] args) throws Exception
    {
        // Initializing the queue
        LinkedTransferQueue<Integer> queue = 
                        new LinkedTransferQueue<Integer>();
  
        // Adding elements to this queue
        for (int i = 1; i <= 5; i++)
            queue.add(i);
  
        // Printing the elements
        System.out.println("Elements are :");
        for (Integer xyz : queue) {
            // will take and remove the head of the queue
            System.out.println(queue.take());
        }
        // Printing the size of the Queue
        System.out.println("Queue Size: " + queue.size());
    }
}

输出:

Elements are :
1
2
3
4
5
Queue Size: 0

参考资料 : https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/LinkedTransferQueue.html#take()

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程