LinkedTransferQueue transfer() method in Java with Examples

The transfer() method of class LinkedTransferQueue is an inbuilt function in Java which is generally used to transfer an element to a thread which is waiting to receive it, if there is no thread waiting then it will wait till a thread comes to waiting state as soon as waiting thread arrives element will be transferred into it.

Syntax:

public void transfer(E e)

Parameter: This method accepts a mandatory parameter e which is the element to be transferred to the thread which is in waiting state.

Return value: This method returns nothing, hence the return type is void. .

Exceptions: This method throws the following exceptions:



  • NullPointerException: If a program attempts to use an object reference that has the NULL value.
  • InterruptedException: If interrupted while a thread is waiting or sleeping .

Below programs illustrate the LinkedTransferQueue.transfer() method in Java:

Program 1: To illustrate LinkedTransferQueue.transfer() method in Java.

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to illustrate
// LinkedTransferQueue.transfer() method
  
import java.util.*;
import java.util.concurrent.*;
  
class GFG {
    public static void main(String args[])
    {
  
        LinkedTransferQueue<String> g
            = new LinkedTransferQueue<String>();
  
        new Thread(new Runnable() {
  
            public void run()
            {
                try {
                    System.out.println("Transferring"
                                       + " an element");
  
                    // Transfer a String element
                    // using transfer() method
                    g.transfer("is a computer"
                               + " science portal.");
                    System.out.println("Element "
                                       + "transfer is complete");
                }
                catch (InterruptedException e1) {
                    System.out.println(e1);
                }
                catch (NullPointerException e2) {
                    System.out.println(e2);
                }
            }
        }).start();
  
        try {
  
            // Get the transferred element
            System.out.println("Geeks for Geeks "
                               + g.take());
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}

chevron_right


Output:

Transferring an element
Geeks for Geeks is a computer science portal.
Element transfer is complete

Program 2: To illustrate NullPointerException

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to illustrate
// LinkedTransferQueue.transfer() method
  
import java.util.*;
import java.util.concurrent.*;
  
class GFG {
    public static void main(String args[])
    {
  
        LinkedTransferQueue<String> g
            = new LinkedTransferQueue<String>();
  
        new Thread(new Runnable() {
  
            public void run()
            {
                try {
                    System.out.println("Transferring"
                                       + " an element");
  
                    // Transfer a null element
                    // using transfer() method
                    g.transfer(null);
  
                    System.out.println("Element "
                                       + "transfer is complete");
                }
                catch (Exception e) {
                    System.out.println(e);
                    System.exit(0);
                }
            }
        }).start();
  
        try {
  
            // Get the transferred element
            System.out.println("Geeks for Geeks "
                               + g.take());
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}

chevron_right


Output:

Transferring an element
java.lang.NullPointerException

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.




My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.