Avoiding thread deadlocks and starvation is dead easy? You should tell my professor that since he clearly was of a different opinion! Once you go beyond doing very simple stuff threads are extremely susceptible to complete screwups even by seasoned professionals. Depending on what you are trying to do, thread communications and collaboration is very hard indeed. The current collaborative event model for concurrency is actually quite sleek and resembles a kind of setup used by some application servers. I really don't feel threads belong in mIRC.