spacer
Web Development Tutorials JAVA Tutorials
 Developer Newsletter

Tutorials
AJAX
ASP
CGI & Perl
CSS
Flash
HTML
Illustrator
Java
JavaScript
Linux
MySQL
PHP
Photoshop
Python
Wireless
XML
Miscellaneous


Scripts Directory
AJAX Scripts
ASP Scripts
ASP.NET Scripts
CGI & Perl Scripts
Flash Scripts
Java Scripts
JavaScript Scripts
PHP Scripts
Python Scripts
Remotely Hosted Scripts
Tools & Utilities Scripts
XML Scripts

Web Hosting Directory
ASP.NET
Budget
Dedicated Servers
Ecommerce
Linux
Resellers
Shared
Small Business
Windows

Developer Manuals
Learn HTML
Learn PHP
Learn CSS
Learn AJAX
Learn JavaScript
Learn Pear
Free White Papers

Developer Resources
Developer Tools
Developer Content
Survey Software
Dedicated Servers




Eye on performance: Wait leaks

By Jack Shirazi & Kirk Pepperdine
2005-04-28


Gain a Better Understanding of this Curious Race Condition

A fine line runs between performance tuning and debugging. Several particular categories of bugs, including memory errors and thread race conditions, frequently surface during performance tuning, and this month, our performance tuning experts Jack Shirazi and Kirk Pepperdine show how to spot a particular class of race conditions, called wait leaks.

Some types of bugs often fall to the performance tuner to fix, even though they are not, strictly speaking, performance problems. The out-of-memory error, often caused by object leaks, is one such type of bug. (We outlined how to handle those in "Trash talk," an earlier installment of this column available in Resources.) Another type of bug that often falls to performance tuners to remedy is thread deadlock and other threading problems, such as race conditions, because these tend to only show up when the program is tested under load.

These bugs are often handed to performance tuners for good reason: The tools needed to identify and eliminate performance and memory bottlenecks are the same tools that can identify object leaks and race conditions. Deadlocks are relatively easily identified; once you notice that the application is frozen, a stack trace will show you which set of threads have locked the others' monitors. Race conditions, unfortunately, can be more elusive.

Tutorial Pages:
» Gain a Better Understanding of this Curious Race Condition
» Wait Leaks
» Simulating a Wait Leak
» Spotting a Wait Leak
» The Final Word
» Resources


First published by IBM developerWorks


 | Bookmark Print |   Write For Us
Related Tutorials:
» All about JAXP, Part 1
» Make Database Queries Without the Database
» Load List Values for Improved Efficiency
» 2 Ways To Implement Session Tracking
» A Simple Way to Read an XML File in Java
» Develop Aspect-Oriented Java Applications with Eclipse and AJDT



About the NetVisits, Inc Network | Write For Us | Advertise
Copyright ©2007 NetVisits, Inc Network. All Rights Reserved. Privacy Policy.
Visit other NetVisits, Inc. sites: