Saturday, March 28, 2020

Difference Betwixt Callable Too Runnable Inwards Coffee - Thread Interview Question

Difference betwixt Callable in addition to Runnable interface inward Java is i of the interesting questions from my listing of Top fifteen Java multi-threading questions, in addition to it’s too rattling pop inward diverse Java Interviews. The Callable interface is newer than Runnable interface in addition to added on Java v loose along amongst other major changes e.g. Generics, Enum, Static imports in addition to variable declaration method. Though both Callable in addition to Runnable interface are designed to stand upwardly for a task, which tin last executed past times whatever thread, at that topographic point is to a greater extent than or less meaning divergence betwixt them. In my opinion, the major divergence betwixt Callable in addition to Runnable interface is that Callable tin render the effect of an performance performed within call() method, which was i of the limitations amongst Runnable interface.
 
Another meaning divergence betwixt Runnable in addition to Callable interface is the mightiness to throw checked exception. The Callable interface tin throw checked exception because it's telephone yell upwardly method throws Exception. 

By the way, sometimes this enquiry is too asked as follow-up enquiry of to a greater extent than or less other classic difference betwixt Runnable in addition to Thread inward Java. Commonly FutureTask is used along amongst Callable to acquire the effect of asynchronous computation business performed inward call() method.




Callable vs Runnable interface inward Java

As I explained major differences betwixt a Callable in addition to Runnable interface inward the concluding section. Sometimes this enquiry is too asked as the divergence betwixt call() in addition to run() method inward Java. All the points discussed hither is as related to that enquiry as well. Let's meet them inward signal format for improve agreement :

1) The Runnable interface is older than Callable, at that topographic point from JDK 1.0, acre Callable is added on Java 5.0.

2) Runnable interface has run() method to define business acre Callable interface uses call() method for business definition.

3) run() method does non render whatever value, it's render type is void acre telephone yell upwardly method returns value. The Callable interface is a generic parameterized interface in addition to Type of value is provided when an event of Callable implementation is created.

4) Another divergence on run in addition to telephone yell upwardly method is that run method tin non throw checked exception acre telephone yell upwardly method tin throw checked exception inward Java.

Here is a prissy summary of all the differences betwixt Callable in addition to Runnable inward Java:

 Difference betwixt Callable in addition to Runnable interface inward Java is i of the interesting ques Difference betwixt Callable in addition to Runnable inward Java - Thread Interview question


That's all on Difference betwixt Callable in addition to Runnable interface inward Java or divergence betwixt call() in addition to run() method. Both are a rattling useful interface from marrow Java in addition to a skillful agreement of where to role Runnable in addition to Callable is a must for whatever skillful Java developer. In adjacent article, nosotros volition meet an illustration of Callable interface along amongst FutureTask to larn How to role Callable interface inward Java.


Other Java multi-threading questions for practice
Difference betwixt start() in addition to run() method of Thread class.
How to solve producer consumer occupation inward Java using aspect in addition to notify
Why to aspect in addition to notify method are declared inward Object class
Difference betwixt CyclicBarrier in addition to CountDownLatch inward Java
Why to aspect in addition to notify method required to called from synchronized context

Further Learning
Multithreading in addition to Parallel Computing inward Java
Applying Concurrency in addition to Multi-threading to Common Java Patterns
Java Concurrency inward Practice - The Book
Java Concurrency inward Practice Bundle past times Heinz Kabutz


No comments:

Post a Comment