I think one of the reasons why mIRC doesn't have more threads... say one for each channel or whatever, is because of the concurrency issues involved for mIRC scripts.