As an aside to everybody wanting multithreading so badly-- there is no advantage to multithreading in mIRC, simply put.

multithreading is only used in situations where you really need to pull as much horsepower from the cpu as possible, or conserve memory instead of spawning processes in the case of server daemons. Since mIRC is not a server daemon and only resides in one process, clearly the use would be to take advantage of multi-core cpu's. Unfortunately, mIRC has a dead slow script engine to begin with and no one is really using it for heavy processing, so threading is not really necessary.

Yes there are times when threads are necessary that dont fit into the two categories above-- however mIRC has its own homegrown solutions to those problems, and they're not so terrible either.

It comes down to this: you have to ask yourself-- why exactly do I need multithreading? Are there any problems that I cannot solve given mIRC's single threaded environment?

Most programmers and application designers steer clear from multithreading for as long as humanly possible, because it's really not worth the hassle 80% of the time. This case easily falls into that 80%.


- argv[0] on EFnet #mIRC
- "Life is a pointer to an integer without a cast"