What cycle can be applied to best optimize the pool size based on the individual computer?
Answer: deploy-monitor-adjust: Set the initial pool size to the number of CPUs, and observe for a while to see how often the threads interact with the CPU or another contentious resource. For whichever resource is in lowest supply, the pool size can be increased by the ratio of time the CPU was not used divided by the total executing time
Learn More :
Multithreading and Concurrent Processing
- What is the advantage of using concurrent collections from the java.util.concurrent package instead of a regular property?
- Where in the JCL can alternate forms of threading locks be found?
- How does a synchronized block improve performance compared to using the synchronized keyword?
- What is one positive and negative aspect of using the synchronized keyword to prevent concurrent access issues?
- How does the Exchanger class of the concurrent package support synchronization between threads?
- How does the Phaser class of the concurrent package support synchronization between threads?
- How does the CyclicBarrier class of the concurrent package support synchronization between threads?
- How does the CountDownLatch class of the concurrent package support synchronization between threads?
- How does the Semaphore class of the concurrent package support synchronization between threads?
- What is an Atomic variable (from the java.util.concurrent.atomic package) and how does it prevent concurrent access issues?
- What is one of the dangers of concurrent access and modification of a property?
- What is a deadlock, and what causes it?
- What is the difference between concurrent and parallel processing in computer science?
- What is the function of the Future submit(Callable task) method of the ExecutorService interface?
- What is the function of the Future<?> submit(Runnable task, T result) method of the ExecutorService interface?
- What is the function of the Future<?> submit(Runnable task) method of the ExecutorService interface?
- What is the purpose of the Future type objects that are returned from some of the ExecutorService methods?
- What is the function of the boolean isCancelled() method of the Future interface?
- What is the function of the boolean cancel(boolean mayInterruptIfRunning) method of the Future interface?
- What is the function of the boolean isDone() method of the Future interface?
- What is the function of the V get() and V get(long timeout, TimeUnit unit) methods of the Future interface?
- List and explain all the parameters for the following constructor of the ThreadPoolExecutor.
- What are the dangers of having a pool that is too big or too small?
- How do you ensure that isInterrupted() actually reflects the status of the thread?
If the answers is incorrect or not given, you can answer the above question in the comment box. If the answers is incorrect or not given, you can answer the above question in the comment box.