threadpool

Maximizing Worker Thread Utilization

To solve a problem (and better my understanding of multitasking) I have written a small thread pool implementation. This thread pool spins up a number of worker threads which pop tasks off of a queue as they are added by the client of the thread pool. For the purposes of this question when the task queue is empty the worker threads are a...

How can I accomplish ThreadPool.Join?

I am writing a windows service that uses ThreadPool.QueueUserWorkItem(). Each thread is a short-lived task. When the service is stopped, I need to make sure that all the threads that are currently executing complete. Is there some way of waiting until the queue clears itself? ...

Is there any library for C# providing a thread pool that will execute no more than X tasks per unit of time?

A problem is that a particular resource cannot handle more than 1 request per second and I want to pass that parameter to a thread pool that manages all concurrent calls to that resource. Is there any library that offers such kind of custom thread pool or I should look forward to implement my own? Thanks. ...

why java.util.HashMap.getEntry can block my program ?

Hi, everyone, my program had been blocked , I used the jstack commander to analyze, the following thread took the lock "0x0000000603f02ae0" , and others threads couldn't fetch the lock. I had waited at least one hour, but the thread didn't unlock , my question is why the thread'state is RUNNING, and stop at java.util.HashMap.getEntry(Has...

What are the downsides of using non-managed threads in a managed environment?

What are the disadvantages of creating my own threads inside a managed environment like a weblogic application server? I have always used managed threads (using the WorkManager api) whenever i am working inside an application server. However I am unclear on the disadvantages or issues that might be caused by using non-managed threads ins...

Named pipes: Many clients. How to be prudent with thread creation? Thread Pool?

Situation: I'm am using named pipes on Windows for IPC, using C++. The server creates a named pipe instance via CreateNamedPipe, and waits for clients to connect via ConnectNamedPipe. Everytime a client calls CreateFile to access the named pipe, the server creates a thread using CreateThread to service that client. After that, the ser...

Java starting a thread pool in objects constructor

Is it safe to start a thread pool in an objects constructor? I know that you shouldn't start a thread from a constructor, something about the "this" pointer escaping (I don't exactly understand this, but will do some more searches to try and figure it out). The code would look something like this: private ExecutorService pool; public ...

How to cause locks to be freed in one thread which were set by another

I have a simple thread pool written in pthreads implemented using a pool of locks so I know which threads are available. Each thread also has a condition variable it waits on so I can signal it to do work. When work comes in, I pick a thread by looking finding an available thread from the lock pool. I then set a data structure associate...

TNonblockingServer, TThreadedServer and TThreadPoolServer, which one fits best for my case?

Our analytic server is written in c++. It basically queries underlying storage engine and returns a fairly big structured data via thrift. A typical requests will take about 0.05 to 0.6 seconds to finish depends on the request size. I noticed that there are a few options in terms of which Thrift server we can use in the c++ code, speci...

How to implement PriorityBlockingQueue with ThreadPoolExecutor and custom tasks

I've searched a lot but could not find a solutuion to my problem. I have my own class, BaseTask, that uses a ThreadPoolExecutor to handle tasks. If I don't want prioritization (i.e. using a LinkedBlockingQueue) this works just fine, but when I try to use a PriorityBlockingQueue I get ClassCastException because the ThreadPoolExecutor w...

A very simple thread pool using pthreads in C++

Hello, I'm trying to understand some of the basics of using POSIX pthreads. The kind of thing I need to do (eventually) is parallelize some computations, using a thread pool model. At present I want to ensure I have a very basic sense for how the POSIX pthread model works. So I'm trying to create the simplest thread pool that's gen...

How can I lock threads in Javascript?

I want to lock other threads when one thread is running. It is possible in .Net with a lock object. I need do the same in AJAX. function f_OrnekleriGetir(bKaydet) { var ddlKlinikId = "<%=ddlKliniklker.ClientID%>"; var iKlinikId = $("#" + ddlKlinikId + " option:selected").val(); var arrOrnekNolar = new Arra...

What is the correct use of the ASP.NET Thread Pool?

Hi there, My scenario is this, I have a file that slowly gets populated over the course of an hour or two (mp3, video, etc). As this file is populated many users are connected to the server to receive new data as it is added to the server. At the moment each visitor connects to the server, and an IHttpAsyncHandler allocates a thread fr...

Signaling web page when ThreadPool thread is completed

From a web page I start a time consuming job and update it's status on the UI using webmethod. Job is done in a thread: ThreadPool.QueueUserWorkItem(new WaitCallback(DoJob), parameters); Job set's it status using static properties, and when web page, using javascript, calls web method it read those properties. [System.Web.Services...

What is the danger in simply increasing the Connection Pool?

I'm doing some performance testing against an Apache server and getting the dreaded message "the context pool has been exhausted! Dun Dun Dun." (dramatic emphasis added) The current proposal floating around by the devs is to simply increased the connection pool-size. While this may be valid, little bells are going off in my head saying...

Multi thread worker thread status

I create my threads as for (int i = 0; i < threadCount; i++) { Searcher src = new Searcher(i, this); threads[i] = new Thread(new ThreadStart(src.getIpRange)); threads[i].Name = string.Format(i.ToString()); } foreach (Thread t in threads) { t.Start(); } with threadCount(= 100, 150, 255 etc...) but I can...

Thread Pool and .IsBackground in .NET

MSDN, as well as many other sources, claim that worker threads in the thread pool are always background. "Thread pool threads are background threads." (MSDN) "Pooled threads are always background threads." (Threading in C#, Joseph Albahari) I can easily make the worker thread non-background by setting Thread.CurrentThread.I...

Limiting the threads per processor using IIS 7.5

I’m running some performance tests on an ASP.NET MVC application. I see a high contention rate and the number of threads increasing overtime. I believe the two to be related, as threads are blocked new threads are created by the thread pool to handle incoming requests. I believe this in turn is making the contention worse (i.e. more thre...

ThreadPool QueueUserWorkItem with list

Hi I would like to use the QueueUserWorkItem from the ThreadPool. When I use the following code everything works well. private int ThreadCountSemaphore = 0; private void (...) { var reportingDataList = new List<LBReportingData>(); ThreadCountSemaphore = reportingDataList.Count; using (var autoResetEvent = new AutoResetEvent(false)) { ...

Why .net Threadpool is used only for short time span tasks?

I've read at many places that .net Threadpool is meant for short time span tasks (may be not more than 3secs). In all these mentioning I've not found a concrete reason why it should be not be used. Even some people said that it leads to nasty results if we use for long time tasks and also leads to deadlocks. Can somebody explain it in...