1 To N Thread - Show A Definite Number Of Threads?
Sep 3, 2009
Does anyone have a 1 to n thread example in which n threads are created dynamically? There are a number of examples that show a definite number of threads, and some that imply n threads by using a tcp ip listener or a file system listener. However, I'm looking for a 1 to n created in response to a dynamic requirements, provided purely by and for my program.Essentially, my requirement is to be scalable. 1 to n threads based on application throughput should make this pretty easy to satisfy.
View 9 Replies
ADVERTISEMENT
Sep 22, 2009
I've been reading up on multi-threading and just have a couple trivia questions that are ambiguous given my sources:
1) What is the max number of threads in the thread pool? The number 25 is used but I have on reference that says 25 per CPU and another that says 25 per core. I realize that both can be right but before I start making flagrant design decisions I'd like some validation.
2) Let's say I'm in the body of a delegate and I call a function or sub. Does that function/sub remain in the thread or does it revert to the parent thread? I'm guessing the former would be much easier to implement so that's probably what MS did but you just can never tell.
View 10 Replies
Sep 2, 2010
My understanding is that thread.join will suspend the execution of code on the calling thread until the spawned thread finishes or is aborted...
With that in mind, I tried this:
For i = 1 to 50
threads = New Thread(AddressOf test)
threads.IsBackground = True
threads.SetApartmentState(ApartmentState.STA)
[CODE]...
However, the rest of the code runs when the loop finishes, not waiting for all the spawned threads to finish. Since the rest of the code needs the threads to finish (otherwise the rest will error).
View 4 Replies
Dec 7, 2011
I have only managed to use an STA to run a long running excel process with a background worker and 2 delegates.
What I want to do now is have the whole application running outside of the main thread to make sure the UI is always available, I then want to create new threads from the thread I have outside of the main to run the various processes. I will need to have some form of syncronisation in there for certain things to be done once a thread is completed and also I will need to change the button states on the main form to stop certain process being called whilst other processes are running.
This is my code so far, basically this loads in a csv file to a datatable adding manager employee ID and email address, filters it and displays the resultant data in a listview. There eventually will be some filter options as well. There are then 2 options for processing the data, it will produce individual bradford factor reports and email them to each manager or will produce a summary spreadsheet that is sent to HR.
Currently because there are around 8000 lines of data, it was the summary option that required the background worker as a long running process time out error was occuring whilst in the main.
What it does is write the data from the list view to an excel sheet and colour co-ordinates the summary rows according to the absense policy. It then copied bottom to top, the summary value the next blank column against all the lines for that individual and then uses this column to decide which sheet to move the row to, copying the row to the new sheet then deleting it from the master list and shifting the cells up.
This works well, but the process of loading the data in to the list view locks up the main thread where it currently runs. I also wanted to make this slightly more complicate as far as threading is concerned, as more of a learning curve than a practical application of the function.
Here is my code so far: [URL]
View 10 Replies
Jan 3, 2010
Trouble finding 1 thread out of the 3568 threads I have in my history.In the one I'm looking for I wrote an Extension Method called Shape , I think.
The code could change the Shape of any Control and I think I added similar code for any FORM in the same thread but not for User Controls.
Does anyone remember roughly what year and month it was?
It might save me hunting through my past threads.
[Code]...
View 4 Replies
Dec 5, 2010
In my application I have a loop that makes calls to a website to download data. I'm using a DownloadDataAsynch call with a handler.
I'm making many such calls in a loop. What I'd like to do is, if I have more than a certain number of replies pending, I should pause the loop and let the data handlers run.
How do I do that?
CODE:
View 14 Replies
May 19, 2012
I have several threads in my WinForm and I am running them via Thread.Pool, what I need to know is that how can I run them sequentially.
example:
Thread1 => me.label1.text = "Thread1"
Thread2 => me.label2.text = "Thread2"
Thread3 => me.label3.text = "Thread3"
In my Form_Load event, I have a line as follows:
[Code]...
View 8 Replies
Dec 12, 2010
I'm working with vb.net 3.5SP1 /VS2008. I'm familiar with windows threads from C++ but I didn't do it since the 90s.I have 5 threadpool calls (ThreadPool.QueueUserWorkItem) that do some complex work (they read info from different web pages, regular expressions, etc) and each updates different columns in a data-grid view. They pause for 1 second between each web read with thread.sleep (not to overload the server). My issue is that some of the threads do not complete. I get for example 3 results when I should have 8. Sometimes it works fine. This is an older 3.0Ghz HT machine, I want to test it on the lowest common denominator(and that is all I have ). I tried using Monitor.Enter(ListView1)it seems to help but it is hard to tell. I tried using the thread debug window but it is not really helpful, it seems do disappear during execution. If I remove the threads I always get my data. I'm wondering if something is being blocked? Is there a way to debug this?
Also, does thread.sleep(x) stop all threads or just the thread that the statement is executed in?
View 4 Replies
Jun 15, 2012
I have a thread pool that send file using ftp protocol. I encapsulated the call for threadpoll with try catch believing that the thrown exception inside the threadpool will be catch by the main thread. Instead the system terminate whenever i throw an exception from inside the threadpool. Also I design the Clsftp.ftpsend class to throw an exception related to ftp error. Basically my design for handling the error is just like the code below.
'Main thread
Private Sub BttnStartSending_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BttnStartSending.Click
try
Dim objparam As New ThreadParameter
[code]....
View 7 Replies
Feb 15, 2010
I have need of either enumerating all the managed threads in a application or listen to when a new thread is created. I can not find anyway to do this through searching the web. It strikes me as odd the the IDE can list all the manage threads, but I can't.
If this is not possible, is there clarification as to why this is not possible.
I need to create a shared class in a DLL that will when it receives a signal will stop all the threads currently running, and gracefully exit the application.
View 3 Replies
Oct 15, 2009
What is the best way to pass objects between threads? I would like to create a new thread that creates a new object : Dim myobject as newobject = new newoject Then in my main thread, I would like to use myobject. Ideally I would like to just assign to a global variable but I don't think that is possible. I think I may have to use some form of delegate function (but I think the child thread would need to complete to use a callback). The new thread will not actually end before I need the object reference in the main thread. How should I go about this?
View 2 Replies
May 23, 2011
c# - Does queuing threads impact non-thread safe objects in the same class?
View 1 Replies
May 7, 2009
If I spawn a thread with ThreadPool.QueueUserWorkItem and that thread does not reference the object that is not thread safe, would it compromise that non-thread safe object? By not thread safe object, I mean a third party interface to a programmable logic controller that has no ability to open simultaneous connections or concurrency support.I suppose I just wanted to be sure that by queuing threads in the same class as my reference to that object, I wouldn't somehow be compromising its thread safeness in a way I didn't realize.
View 2 Replies
Apr 29, 2010
I just made a rapid file transfer form for my photos.In which I drag photos into a listview with my destination folder set.I assign each individual file transfer to a new thread. This works very fast as compared to the standard drag n' drop.
View 2 Replies
Mar 23, 2011
How can I make an application to start only "x" number of threads at a time?
View 1 Replies
Feb 26, 2012
I've written an app - that use httplisteners to talk to other winforms (they will be services but are now simple form apps so I can easily show stats as they communicate). One UI app talking to three other "service" apps - all talking to each other as well...Everything uses multi-threading...At any rate - how many threads do I have available - I see that most of the apps seem to run "two or three" consecutive threads - but not more than that.Is that just a byproduct of running in the IDE - or is there a max of number of threads available?When more threads are asked for than are available - do they simply wait to get started for a free thread to become available?
View 4 Replies
Mar 8, 2011
I've searched a good deal on the topic and have found little results. It seems adding foreground into the criteria on any engine I've used causes tons of entry level documents on threading in .Net.
In my current project I have a foreground thread within a static class that lies dormant until it is told otherwise. It contains a queue of items that must be processed and the items application cannot close without all items being processed. Right now I have a method that tells the thread that it should stop accepting new items and close when it is finished processing everything, but not everyone on the team remembers to call the method. Having the GUI close while the process still runs in the background is quite a bug in my opinion. If I can add a periodic check to see if the queued thread is the last foreground thread, then I can call the method and not have to worry about others that use the class.
View 2 Replies
Jan 6, 2010
Currently I create a thread the following way (the normal way)
Public loginThread As Thread
Public loginThreadStart As New ThreadStart(AddressOf LogIntoWhatever)
Public callLoggedIn As New MethodInvoker(AddressOf loggedIn)
However, what I want to be able to do is something along the lines of (this obviously does not work, and is entirely pseudocode)
dim i as integer = 0
for i = 0 to i = 25
Public loginThread(i) as Thread
Public loginThreadStart(i) as New ThreadStart(AddressOf LogIntoWhatever)
next i
Public callLoggedIn as new MethodInvoker(AddressOf loggedIn)
Where I could change 25 to whatever I wanted and have that number of threads created. They would all be running an identical sub which does do not make calls of any kind to each other, they don't need knowledge of each other. Is anything like this possible?
View 3 Replies
Sep 24, 2010
[code]How do I create X number of threads without hardcoding?Eg. user decides the number of threads
View 1 Replies
Mar 17, 2011
Is there any way/property to set BackgroundWorker to execute only x number of threads?
View 1 Replies
Dec 3, 2009
I want to start multiple threads but not a specific number. For example;
private sub do_sth
...
end sub
[Code]....
View 1 Replies
Nov 10, 2009
I'm trying to improve performance of an application by introducing threading (see my earlier question). I have filled a Queue(of String) with XML messages and I now want to setup two threads to post these messages to a webserver). This process needs to ensure that each message is only posted once. Would a BackgroundWorker (or two) be suitable for this?
View 2 Replies
Mar 7, 2010
I'm writing a program for my algebra students to practice integers.Stuff like....
3-6
-4 + (-5)
3(-4)
-15 � 3
etc.
I want to show an explanation and for the addition and subtraction, I want to show it on a number line. For example, if the problem is 3 - 7, the number line should show and arrow to that goes right to 3, and then left 7 units (starting from 3). Then the student can see that the answer is -4.I could probably do this with some string manipulation, but what would be the easiest way to do it in a picture format? Maybe a bitmap.
View 1 Replies
Dec 23, 2009
Say I have a code with 3 methods that do some pretty intensive work. Would executing these methods on 3 seperate threads be faster then executing them one after the other on a single core cpu? And what if it's a dual core or HT?
View 8 Replies
Nov 2, 2011
In VB if you prompt the user for a number between 1-20, then a word, how do you get a text box to show the word the same number of time as the number selected using loops?... Ex: please select a number: 4 / select a word: cat....the text box should display ::: catcatcatcat ........
I am doing this for a class and my brain has locked up. Prob. just over thinking it though. Thanks in advance for any help!
View 6 Replies
Oct 19, 2011
I just had a new, last-minute idea on to take on a task, so I am running to StackExchange for quick help.
What I want to do is execute a series of methods right in a row, each in their own threads. I want the application to wait until all of these threads are completed, after which the program will resume. It also has to use managed threading (thread pool).
What quick examples could you provide to help me along the way? If it's too complex, what things should I know about so that I can Google it on my own?
View 1 Replies
Dec 30, 2009
I have a main thread which is designed to be a batch processor - it spawns a series of 'child' threads from a loop (which can vary in terms of the no of items) - see below
[Code]...
However, each of the 'child' threads could take anywhere from milliseconds to about a minute to process - depending on the complexity of each calculation. There may also be a large number of child threads - e.g 100s. Creating large numbers of child threads is not efficient. I therefore want some way to effectively queue each child thread (and cancel if the process is taking too long to complete). Autoevents seems like one way of doing this, but the only examples I can find seem to assume there are two different processes on seperate threads, not one process being repeated.
View 4 Replies
Mar 2, 2010
I am running sum of my code in a background worker and I need to show sum tooltip text on a label, but nothing shows up.[code]...
View 1 Replies
Feb 23, 2009
i have a frmStatus form and a frmSearch form when i load frmSearch or make search frmStatus opens showing please wait with a picturebox and a animated gif and when the frmSearch is ready to show frmstatus hides before picture box all was well but when i added a picturebox frmstatus shows but it hangsup and the animation is still
[Code]....
View 1 Replies
Apr 27, 2011
I am writing an 'Admin Console' that accesses hMailServer via its provided COM interface. I am using Visual Basic 2010 Express. In one procedure, it scans for the whole accounts. Because it's a lengthy procedure, I shove it into a set of BackgroundWorker threads.
First result: A maximum of 19 simultaneous threads, with 36 seconds total time.Then I rewrote a time consuming thread initialization code segment, and managed to reduce the time required to approximately 14 seconds... but the thread count now hit 330 threads!Will that huge amount of threads be detrimental? E.g., causing out-of-memory exceptions &c. ?
View 1 Replies