i have a program which is using several threads to execute some task. Each thread is having a bunch of task to execute. after executing one of them, each thred will call a post
I have done this many times. Have the posted message from the threads update a "cache" on the main form. Have a timer on the main form (set to around 100 ms, or less if you need to) update the main form from the cache. This way the amount of work done per posted message is very small, so the application will spend less time processing and your application will appear "responsive".