Если я правильно интерпретирую ваши намерения, вы хотите использовать iCount, чтобы сообщить своей программе, когда (каждые 10 ^ 6 операций) обновлять пользовательский интерфейс?И iCount является глобальным, все потоки должны совместно использовать значение, и вы хотите сохранить его согласованность?
Я бы искал способ заменить этот глобальный счетчик частными счетчиками для каждого потока, и чтобы потоки отправлялисообщение для обновления пользовательского интерфейса независимо друг от друга.Если вы настаиваете на использовании глобального счетчика, вам придется каким-то образом синхронизировать потоки, что приведет к снижению производительности.Да, вы могли бы написать свою программу таким образом, но я не рекомендую ее.
Если вам не нравится идея, что все потоки отправляют сообщения в пользовательский интерфейс, возможно, это может сделать только один поток;если один поток проходит 1/4 пути через программу, то и другие потоки (приблизительно).