Solved

Multi-threading opinion

Posted on 2007-03-19
9
274 Views
Last Modified: 2008-02-01
 What is your 'impression' of multi-threading?  How does one debug a multi-threaded application?  How do you know which thread is running and when?

  Can you describe under what circumstances that you think multi-threading is a useful technique?
 
0
Comment
Question by:jmurguia
  • 4
  • 3
9 Comments
 
LVL 86

Expert Comment

by:CEHJ
ID: 18750424
You can best debug a mt application using an IDE that gives you access to the various threads running.

Multithreading is essential in certain circumstances, e.g. in a web server. No serious web server can disallow the processing of simultaneous requests

It's a common misconception that mt speeds up processing. This is seldom the case; in fact the reverse is more likely
0
 

Expert Comment

by:EmmDub
ID: 18750494
Multithreading is most useful in situations where you have to do your own homework instead of asking E-E for help, but sometimes not.
0
 
LVL 30

Accepted Solution

by:
mayankeagle earned 50 total points
ID: 18750791
Also think of multi-threading required in any typical scenario where you have one server servicing multiple clients, e.g., a chat server where mutiple users are online at one time and communicating with each other. The server needs to be able to process these client requests 'parallelly' and 'asynchronously' (independent of each other), so it needs to be multi-threaded.

>> It's a common misconception that mt speeds up processing. This is seldom the case; in fact the reverse is more likely

True. Cases where you might feel that mutli-threading is improving performance are where you want to improve response-time to the user. Though it doesn't really improve the performance there but it 'looks like' it is doing so because it parallelizes tasks. For example, if a user logs clicks on a button and you need to show him some stuff on the UI and also do some database updates. The user might feel that the application is slow because it takes time to get the response back. Now instead of doing the database updates on the same thread, if you do it on another thread, the user will get the response faster (though the DB update is taking place in another thread) and he will feel like the application's performance is better.
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 18751053
? I wonder why you consider my comment not worthy of any points jmurguia?
0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 30

Expert Comment

by:mayankeagle
ID: 18751322
Yes this should be a split.
0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 18751332
Notified Venabili
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 18751463
Thanks m
0
 
LVL 30

Expert Comment

by:mayankeagle
ID: 18753386
NP ;-)
0

Featured Post

6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

Join & Write a Comment

Suggested Solutions

Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Viewers learn about the third conditional statement “else if” and use it in an example program. Then additional information about conditional statements is provided, covering the topic thoroughly. Viewers learn about the third conditional statement …
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…

757 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now