In October or November of 2018, I was asked a question in interview process by an interviewer from Sapient, Noida, India. The interviewer Subrata Kundu asked .. What is Thread priority? I said, thread priority is a kind of relative importance given to threads with respect to each other. That relative importance can be a […]
Implement your own threadpool using modern java
This blog post demonstrates creation of a simple thread pool. You can watch my video on youtube, where I have uploaded the screencast of coding this Threadpool using modern java. The logic is very simple. We maintain a list of threads. final List<Thread> poolOfThreads = new ArrayList<>(); Then we maintain a queue of tasks final […]
Use Cyclibarrier In Java Programming Language
Cyclibarrier is used for creating stages in a concurrent programms. You can watch me live coding a cyclicbarrier on youtube. In this blog, I am using Cyclibarrier to allow threads to calculate sum, then calculate the sum of the sums generated by all individual threads. final CyclicBarrier sumBarrier = new CyclicBarrier(numOfThreads, () -> System.out.println(“Sum of […]
Wait, notify and notifyall. What is the difference between notify and notifyall.
Q1 :- How does Java maintains a record of threads waiting on an object? Ans :- Each object has a waiting set. Every time a thread calls wait on an object, that thread gets added in that waiting-set. So, a Set datastructure is used to maintain the record of waiting threads in java. Q2 :- What is the difference […]
Using anonymous class to implement runnable interface in java
You can read about the other ways for implementing runnable interface – using a java class, and using lambda. In this part, we will use anonymous class for doing this. In my opinion, at the time of writing this article, the anonymous class is pretty useless now. If you need an anonymus class then use […]
Using java lambda to provide implementation for Runnable interface.
There are many ways to create a thread. One of those ways is implementin Runnable interface. Again there are several ways to provide an implementation for it. One of those ways is, using lambda to provide an implementation. If you don’t know anything about lambda, then you can read it here. You are gonna need […]
Implement runnable interface using a class in java.
Runnable is a Functional Interface. It has one abstract method called run. To make use of this class, we need to provide an implementation for this method. In practice, compiler only needs a non-abstract method. You can provide a empty body and that will be enough. The implementation need not be meaningful. Here is a simple class, […]
using Anonymous class to extend thread class
In this article, I wrote about extending a Thread class to create a Thread in java. We can also use anonymous class to create a Thread. So, this article will cover the part, where we use anonymous class to provide the thread implementation. If you don’t know, when we declare an anonymous class, it is […]
Extending Thread Class to create threads in java.
To create Thread, we basically need to provide an implementation for run function. We can do it in two ways. Either we can extend Thread class and override it’s run method or we can implement Runnable interface and provide an implementation for it’s abstract run method. In this article, I am extending Thread class. public class SimpleThread extends Thread { } We have […]