Multi-threading opinion

 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?
 
jmurguiaAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

CEHJCommented:
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
EmmDubCommented:
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
Mayank SAssociate Director - Product EngineeringCommented:
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

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
HTML5 and CSS3 Fundamentals

Build a website from the ground up by first learning the fundamentals of HTML5 and CSS3, the two popular programming languages used to present content online. HTML deals with fonts, colors, graphics, and hyperlinks, while CSS describes how HTML elements are to be displayed.

CEHJCommented:
? I wonder why you consider my comment not worthy of any points jmurguia?
0
Mayank SAssociate Director - Product EngineeringCommented:
Yes this should be a split.
0
Mayank SAssociate Director - Product EngineeringCommented:
Notified Venabili
0
CEHJCommented:
Thanks m
0
Mayank SAssociate Director - Product EngineeringCommented:
NP ;-)
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Java

From novice to tech pro — start learning today.