Chapter 2 Executors source code parsing and executors source code
The first two chapters introduce the usage, working mechanism, parameters, and core source code analysis of ThreadPoolExecutor in the basic thread pool.
For details, refer:
Chapter 2 ThreadPoolExecutor usage and working mechanism
Chapter 3 ThreadPoolExecutor source code analysis
1. Executors and Th
I have written two articles on JDBC source code. I think it is a bit boring. I have inserted a juc series of articles to change my appetite. I have mentioned some articles about J u C, the juc system contains a lot of content, not a sentence or two. I will first list the juc-related content that will be listed, and then introduce the version of this article: Tools
The main sections of the J. u. C system contain content, as shown in:
Note that each part of the package contains many classes and
Original link: Oleg Shelajev translation: Importnew.com-shenggordonTranslation Links: http://www.importnew.com/14506.html
4 styles of Java Concurrent Programming: Threads,executors,forkjoin and actors
This article discusses a variety of methods for parallel processing in Java applications. From managing Java threads to a variety of more solutions, executor services, Forkjoin frameworks, and actor models in computing.
We live in a world where things
performing the task, ensuring that all tasks are performed in the specified order (FIFO, LIFO, priority).
Instance code:
Executorservice singlethreadexecutor = Executors.newsinglethreadexecutor ();
for (int i = 1; I
Run Result:
Executors Internal Create Newsinglethreadexecutor source
public static Executorservice Newsinglethreadexecutor () {return
new Finalizabledelegatedexecutorservice
( New Threadpoolexecutor (1, 1,
I. BACKGROUNDThreads belong to the system scarce resources, when the use of threads, if the unlimited creation of threads, high CPU load, can cause the system to run slowly, and worse, the direct outage.On this basis, we hope that when using threads, it is possible to put the number of system threads in a manageable range and to implement thread reuse whenever possible.Second, executors analysisExecutors Sample DEMO /** * @authorBinH * @date 2018/01/
1. Class ExecutorsThe executors class can be considered a "tool class". Invoke the introduction in the JDK1.6 API:Factory and utility methods for the Executor, Executorservice, Scheduledexecutorservice, Threadfactory, and callable classes defined in this package. This class supports the following methods:(1) Create and return a method that sets the executorservice for a common configuration string.(2) Create and return a method that sets the scheduled
execution scheduling in the pool is handled by the pool manager. When there is a thread task, take one from the pool. After the execution is complete, the thread object is returned to the pool. This avoids the performance overhead caused by repeated creation of thread objects and saves system resources.
Before Java 5, it is quite difficult to implement a thread pool. Now Java 5 has done everything for us, and we only need to use it according to the provided API, you can enjoy the great convenie
Java provides four thread pools through executors, namely:Newcachedthreadpool creates a cacheable thread pool that can flexibly reclaim idle threads if the thread pool length exceeds the processing needs, and creates a new thread if it is not recyclable.Newfixedthreadpool creates a thread pool that controls the maximum number of concurrent threads, and the excess threads wait in the queue.Newscheduledthreadpool creates a fixed-line pool that supports
The top interface of the thread pool in Java is executor, but strictly speaking, executor is not a thread pool, but a tool for executing threads. The real thread pool interface is executorservice.The following diagram provides a complete picture of the class architecture of the thread pool.First of all, the Execute method of executor only performs a runnable task, and of course the final implementation class is also initiated in the thread from a certain angle. Depending on the execution strateg
This article translates from: Java concurrency–part 7:executors and thread pools
Let's start by getting to know Java concurrency programming from a primer.
This article describes how to start creating threads and managing the thread pool, in the Java language, a simplest thread is shown in the following code:
Runnable Runnable = new Runnable () {public
void run () {
System.out.println ("Run");
}
}
You can start this thread by following a
1, Newcahchethreadpool:Thread pool can be created as needed, if the thread is not available, when a new task comes, create a new thread to add to the line constructor. Resources are reclaimed for threads that are not used in the thread pool for more than 60s2, Newsigletreadpool:Create a single thread pool, that is, only one of the threads in this thread is working, the task is serial, and if the running thread ends abnormally, there will be a new thread pulling up, the thread pool will ensure th
implements the Runnable interface object, the thread object of course also implements the Runnable interface
Thread T1 = new MyThread ();
Thread t2 = new MyThread ();
Thread t3 = new MyThread ();
//Put the thread into the pool for execution
Pool.execute (t1);
//Using the method of deferred execution style
Pool.schedule (T2, timeunit.milliseconds);
Pool.schedule (T3, ten, timeunit.milliseconds);
//close thread pool
Pool.shutdown ();
}
}
Class MyThread extends
Why use a thread pool?One is to reduce the number of creation and destruction of threads, each worker can be reused to perform multiple tasks;Second, you can adjust the number of threads in the thread pool according to the ability of the system, to prevent the server from being exhausted because of excessive memory consumption (approximately 1MB of memory per thread, the more threads open, the more memory is consumed, and the last crashes).The basic i
The top interface of the thread pool in Java is executor, but strictly speaking, executor is not a thread pool, but a tool for executing threads. The real thread pool interface is executorservice.The following diagram provides a complete picture of the class architecture of the thread pool.First of all, the Execute method of executor only performs a runnable task, and of course the final implementation class is also initiated in the thread from a certain angle. Depending on the execution strateg
ExecutorService is a service in the thread pool. It can be closed at any time and inherits Executor. Executors is a factory class dedicated to creating various thread pools
Introduces the disadvantages of new Thread and the use of four Java Thread pools, which is also applicable to Android. This article is a basic article. Later I will share some advanced features of the thread pool.
1. disadvantages of new ThreadDo you still have the following new T
Note: The jstorm is immediately fused to the Strom kernel, which means there is no Strom in the future. But Twitter has preached about their heron system,Jstorm Author's blog Analysis: in- depth analysis of Twitter Heron[http://www.longda.us/?p=529] Twitter Heron[http// WWW.LONGDA.US/?P=529]Configuring Executors and tasks (threads and instances)Please always remember the title: Executors and tasks (threads
The previous article introduced the basic usage of threadpoolexecutor. Now let's take a look at the basic usage and underlying implementation of the executors factory class.
Source code for three factory methods for creating a thread pool:
// Public static executorservice newcachedthreadpool () {return New threadpoolexecutor (0, integer. max_value, 60l, timeunit. Seconds, new synchronousqueue
A synchronousqueue with a direct submission policy is use
Java thread pool: ExecutorService, Executors,
A simple Java thread pool can be obtained from Executors. newFixedThreadPool (int n. This method returns a thread pool with a thread capacity of n. ExecutorService execute.
An example is provided.
Package zhangphil.exe cutorservice; import java. util. concurrent. executorService; import java. util. concurrent. executors
The thread pool is used to manage the number of worker threads. It holds a queue of threads waiting for execution.Java. util. Concurrent. executors provides the java. util. Concurrent. executor interface to create a thread pool in Java. Let's write a simple program to explain its working mechanism.First, we need a runnable class.Workerthread. Java
package com.journaldev.threadpool; public class WorkerThread implements Runnable { private String
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.