Java Multithreading Interview Set 4

Categories: Java 8(JDK1.8)

What are the main components of concurrency API?

Concurrency API can be developed using the class and interfaces of java.util.Concurrent package. There are the following classes and interfaces in java.util.Concurrent package.

a) Executor

b) FarkJoinPool

c) ExecutorService

d) ScheduledExecutorService

e) Future

f) TimeUnit(Enum)

g) CountDownLatch

h) CyclicBarrier

i) Semaphore

j) ThreadFactory


 What is the Executor interface in Concurrency API in Java?

The Executor Interface provided by the package java.util.concurrent is the simple interface used to execute the new task. The execute() method of Executor interface is used to execute some given command. The syntax of the execute() method is given below.


 What is BlockingQueue?

The java.util.concurrent.BlockingQueue is the subinterface of Queue that supports the operations such as waiting for the space availability before inserting a new value or waiting for the queue to become non-empty before retrieving an element from it. Consider the following example.


What is the difference between Java Callable interface and Runnable interface?

The Callable interface and Runnable interface both are used by the classes which wanted to execute with multiple threads. However, there are two main differences between the both :


A Callable <V> interface can return a result, whereas the Runnable interface cannot return any result.

A Callable <V> interface can throw a checked exception, whereas the Runnable interface cannot throw checked exception.

A Callable <V> interface cannot be used before the Java 5 whereas the Runnable interface can be used.


What is the Atomic action in Concurrency in Java?

a) The Atomic action is the operation which can be performed in a single unit of a task without any interference of the other operations.

b) The Atomic action cannot be stopped in between the task. Once started it fill stop after the completion of the task only.

c) An increment operation such as a++ does not allow an atomic action.

d) All reads and writes operation for the primitive variable (except long and double) are the atomic operation.

e) All reads and writes operation for the volatile variable (including long and double) are the atomic operation.

f) The Atomic methods are available in java.util.Concurrent package.


 What is lock interface in Concurrency API in Java?

The java.util.concurrent.locks.Lock interface is used as the synchronization mechanism. It works similar to the synchronized block. There are a few differences between the lock and synchronized block that are given below.

a) Lock interface provides the guarantee of sequence in which the waiting thread will be given the access, whereas the synchronized block doesn't guarantee it.

b) Lock interface provides the option of timeout if the lock is not granted whereas the synchronized block doesn't provide that.

c) The methods of Lock interface, i.e., Lock() and Unlock() can be called in different methods whereas single synchronized block must be fully contained in a single method.


 What is the difference between Synchronous programming and Asynchronous programming regarding a thread?

Synchronous programming: In Synchronous programming model, a thread is assigned to complete a task and hence thread started working on it, and it is only available for other tasks once it will end the assigned task.

Asynchronous Programming: In Asynchronous programming, one job can be completed by multiple threads and hence it provides maximum usability of the various threads.


What do you understand by Callable and Future in Java?

Java Callable interface: In Java5 callable interface was provided by the package java.util.concurrent. It is similar to the Runnable interface but it can return a result, and it can throw an Exception. It also provides a run() method for execution of a thread. Java Callable can return any object as it uses Generic.


Syntax:

public interface Callable<V>

Java Future interface: Java Future interface gives the result of a concurrent process. The Callable interface returns the object of java.util.concurrent.Future.


Java Future provides following methods for implementation.

cancel(boolean mayInterruptIfRunning): It is used to cancel the execution of the assigned task.

get(): It waits for the time if execution not completed and then retrieved the result.

isCancelled(): It returns the Boolean value as it returns true if the task was canceled before the completion.

isDone(): It returns true if the job is completed successfully else returns false.


What is the difference between ScheduledExecutorService and ExecutorService interface?

ExecutorServcie and ScheduledExecutorService both are the interfaces of java.util.Concurrent package but scheduledExecutorService provides some additional methods to execute the Runnable and Callable tasks with the delay or every fixed time period.

Top Blogs
Java Retention Policy, SOURCE,CLASS,RUNTIME Published at:- Meaning Of Java Published at:- Java Programming in Python Published at:- Applications of Java Programming Published at:- Java Explaination Published at:- History of Java Published at:- Tools You Will Need Published at:- Local Environment Setup Published at:- Popular Java Editors Published at:- Basic Syntax in Java Published at:- Java Identifiers Published at:- Java Modifiers Published at:- Inheritance Published at:- Object and Classes In Java Published at:- Classes in Java Published at:- Source File Declaration Rules Published at:- Java Package Published at:- Constructors Published at:- No argument Constructors Published at:- Basic Datatypes In Java Published at:- Java - Modifier Types Published at:- Java - Basic Operators Published at:- The Relational Operators Published at:- The Bitwise Operators Published at:- The Logical Operators Published at:- The Assignment Operators Published at:- Miscellaneous Operators Published at:- Precedence of Java Operators Published at:- Java - Loop Control Published at:- Java - Decision Making Published at:- Java - Numbers Class Published at:- Java In Character Class Published at:- Escape Sequences In Java Published at:- Character Methods In Java Published at:- Java In Strings Class Published at:- String Length In Java Published at:- Concatenating Strings In Java Published at:- Creating Format Strings In Java Published at:- Java - Arrays Published at:- Creating Arrays In Java Published at:- Java - Date and Time Published at:- Getting Current Date and Time Published at:- Date Comparison Published at:- Simple DateFormat Format Codes Published at:- Sleeping for a While Published at:- Gregorian Calendar Class Published at:- Java - Regular Expressions Published at:- Java - Methods Published at:- Method Calling Published at:- Passing Parameters by Value In Java Published at:- Method Overloading In Java Published at:- The finalize( ) Method In Java Published at:- Java - Files and I O Published at:- Standard Streams In Java Published at:- File Input Stream Published at:- File Output Stream In Java Published at:- Directories in Java Published at:- Java - Exceptions Published at:- Exception Hierarchy In Java Published at:- Java Programming Language Published at:- JDK in Java Published at:- History of Java Programming Language Published at:- Difference Between C++ vs Java vs Python Published at:- How JVM Works – JVM Architecture? Published at:- JVM Memory Published at:- Difference between Byte Code and Machine Code Published at:- How is Java platform independent? Published at:- Java is platform-independent but JVM is platform dependent Published at:- Java Basic Syntax Published at:- Data types in Java Published at:- Primitive data type vs. Object data type in Java with Examples Published at:- Java Identifiers Published at:- Operators in Java Published at:- Variables in Java Published at:- Types of Variables in Java Published at:- Differences between the Instance variable Vs. the Static variables Published at:- Scope of Variables In Java Published at:- Differences between JDK, JRE and JVM Published at:- Similarities and Difference between Java and C++ Published at:- Setting up the environment in Java Published at:- Packages In Java Published at:- Decision Making in Java (if, if-else, switch, break, continue, jump) Published at:- Loops in Java Published at:- Java while loop with Examples Published at:- Java do-while loop with Examples Published at:- Components of do-while Loop Published at:- Continue Statement in Java Published at:- Break statement in Java Published at:- Define Java Methods Published at:- Java Method Parameters Published at:- Return Values In JAva Published at:- Define of Java Scope Published at:- Meaning of Java Recursion Published at:- What is OOP in Java ? Published at:- Java Class Attributes Published at:- Java Class Methods Published at:- Static vs. Non-Static Java Published at:- Java Constructors Published at:- Java Encapsulation Published at:- Java Packages Published at:- Java Inheritance Published at:- Java Polymorphism Published at:- Java - Abstraction Published at:- Java - Interfaces Published at:- Declaring Interfaces In Java Published at:- Java - Overriding Published at:- Java - Packages Published at:- Java - Data Structures Published at:- Java - Data Structures Published at:- The Collection Interfaces In Java Published at:- Generics In Java Published at:- Java - Serialization Published at:- Java - Networking Published at:- Java - Sending Email Published at:- Java - Multithreading Published at:- Java - Applet Basics Published at:- Java - Documentation Comments Published at:- Comments in Java Published at:- Java Interview Questions Set 1 Published at:- Java Interview Questions Set 2 Published at:- Java Interview Questions Set 2 Published at:- Java Interview Questions Set 3 Published at:- Java Interview Questions Set 4 Published at:- Java Interview Questions Set 5 Published at:- Java Interview Questions Set 6 Published at:- Java Interview Questions Set 7 Published at:- Java Interview Questions Set 8 Published at:- Java Interview Questions Set 9 Published at:- Java Interview Question Set 10 Published at:- Java Interview Question Set 11 Published at:- Java interview Question Set 12 Published at:- Java Interview Question Set 13 Published at:- Java Interview Questions Set 10 Published at:- Java Interview Question Set 12 Published at:- Java Interview Question Set 13 Published at:- Java Interview Question Set 14 Published at:- Java Interview Question Set 15 Published at:- Java Multithreading Interview Questions Set 1 Published at:- Java multithreading interview questions Set 2 Published at:- Java multithreading interview questions Set 3 Published at:- Java Multithreading Interview Set 4 Published at:- Java multithreading interview questions Set 5 Published at:- Java collections interview questions Set 6 Published at:- Java collections interview questions Set 7 Published at:- Java Interview Question Set 8 Published at:- Java Interview Question Set 1 Published at:- Java Interview Question Set 10 Published at:- Java Interview Question Published at:- Java Interview Question Published at:- Java Interview Question Published at:- Java Interview Question Published at:- Java Interview Question Published at:- Java Interview Question Published at:- Java Interview Question Published at:- JavaScript Interview Questions Published at:- Javascript Interview Question Published at:- Javascript Interview Question Published at:- JavaScript Interview Question Set 1 Published at:- JavaScript Interview Question Set 2 Published at:- JavaScript Interview Question Set 3 Published at:- JavaScript Interview Question Set 4 Published at:- Python Interview Question Set 6 Published at:- How to Optimize Java Apps on Kubernetes Published at:- When and Why Java is utilized for Application Improvement Published at:- Scanner nextLine() ,nextInt() ,nextDouble() method in Java with Examples Published at:- java toUpperCase() and toLowerCase() example Published at:- pushing value at last in java | how to add element at the end of array in java Published at:- Write a program for group words by first character of given string | Java 8 Stream Example Published at:- Write a Java 8 program to calculate the age of a person in years given their birthday Published at:- Write a Java 8 program to calculate the age of a person in years given their birthday Years Months Days Published at:- Write a Java 8 program to print the first 10 odd numbers Published at:- Filter employees by age in Java 8 Lamda steam Published at:- Write a Java 8 program to get the last element of an array string/object Published at:- Filter employees by age set senior if age is greater than 30 in Java 8 Lamda steam Published at:- How to increment salary by 2%, 5%, etc. Using java Published at:- Write a program to find the only duplicate count list in the List Published at:- Write a program to append char in char ex-input- {A, B, C} output->[A_X, B_Y, C_Z] Published at:- Write a program to sum an array without using the sum method Published at:- Write a program to sum an array Published at:- Drop all while condition not meet dropWhile(),dropWhile(Predicate<T> predicate) Published at:- Find the maximum value in a list of integers using Stream & Method Reference Published at:- How to sort a list of strings by length using Lambda expressions Published at:- How to filter and collect a list of strings that start with a specific letter using Java 8 Stream Published at:- Write a Java program To create a map from a array of strings where the key is the string and the value is its length Published at:- How to count the number of occurrences of a given word in a list of strings using Java 8 Published at:- How to remove all duplicates from an array of integers in Java using Java 8 Published at:- How to find next, previous, tomorrow ,yesterday date using Java 8 Published at:- How to iterate and modify values in a Map using Java 8 Published at:- How to print keys & values of a Map using Java 8 Published at:- count of each character in a String using Java 8 Published at:- Write a Program to find the Maximum element in an array Published at:- How to check if list is empty in Java 8 using Optional Published at:- Find duplicate elements with its count using Java 8 Published at:- Find Last duplicate character of given string using Java 8 Published at:- Given a list of integers, separate odd and even numbers Published at:- java 8 using lambda expression and stream api | Java 8 Programs using Lambda Expression and Stream Published at:- 26 Java 8 Programs using Lambda Expression and Stream Published at:- Java 8 Stream String Null Or Empty Filter Published at:- sum ,min ,max etc example using reduce method using Java 8 Stream API Published at:- Find first repeated character in a string Published at:- Sort highest salary in each department Published at:- Grouping Employees by City and Age Published at:- Finding the Count of Male and Female Employees Published at:- Printing Names of All Departments from Employee Class using Java Published at:- Printing Employee Details by Age Criteria using Java Published at:- Finding Maximum Age of Employee using Java Published at:- Printing Average Age of Male and Female Employees using Java Published at:- Printing the Number of Employees in Each Department using Java Published at:- Java Class subclass interview coding questions Published at:- Child and Parent overridden methods Throws RuntimeException Published at:- Child and Parent overridden methods Throws checked exception Published at:- Find Customer staring with +91 mobile number Published at:- Sorting the Employees Salary in Each Department in Descending Order Published at:- Sorting the Employees Salary in Each Department in Ascending Order Published at:-
R4R.co.in Team
The content on R4R is created by expert teams.