!!! Overview [{$pagename}] is a [Software design pattern] for achieving [concurrency] of execution in an [Application]. [{$pagename}], often also called a replicated workers or worker-crew model, maintains multiple [threads] waiting for [tasks] to be allocated for concurrent execution by the supervising [Application]. By maintaining a [{$pagename}], the model increases performance and avoids [latency] in execution due to frequent creation and destruction of [threads] for short-lived [tasks]. [{$pagename}] typically the number of available [threads] is tuned to the computing [resources] available to the program, such as parallel processors, [CPU] cores, [memory], and [network] sockets. A common method of scheduling [tasks] for [thread] execution is a synchronized [queue], known as a [task] [queue]. The [worker threads] in the [{$pagename}] remove waiting [tasks] from the [queue], and place them into a completed [task] [queue] after completion of execution.!! [{$pagename}] [Threads] As with most [thread pool]s there are different classifications of [threads]: * [Idle thread] * [worker thread] * [thread delay] [task]s are [entities] waiting on a [thread] and there are different classifications of [tasks] as: * [Ready task] * [Waiting task] !! More Information There might be more information for this subject on one of the following: [{ReferringPagesPlugin before='*' after='\n' }]