Less is More (Threading)

Steven D. Morrey smorrey at ldschurch.org
Wed Aug 19 20:13:11 CEST 2009


So I've implemented multi-threading in the main event loop to force high priority events to no longer block the main thread.
It turned out to be brain dead simple to implement.
That has me a bit worried actually.

After going through the source line by line, I see no place where event_list_low and event_list_high could stomp on eachother, ergo no need for mutexes, semaphores etc, anywhere that I was able to find.

The fix I followed was simply to cut the event list high code out and paste it into it's own function then perform a pthread_create right before we enter the main event loop.
So now we have 2 threads where once there was only one.
This appears to be working well, and my latencies are dropping quickly.

If it continues to drop and tends to stay that way I'll get a patch up, but in the meantime, is there any place those 2 threads could take eachothers cookies so to speak?

Thanks in advance!

Sincerely,
Steve


 NOTICE: This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message.



------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july




More information about the Developers mailing list