(Mis)using threads

Florian Schirmer jolt at tuxbox.org
Tue Mar 11 15:48:18 CST 2003


>> I would appreciate any hints which could make things run more 
>> smoothly! Basically 2 ways are left to go:
>> 1. Fix the wine sheduler to obey priorities
>> 2. Fix the thread (locking?) issues
>> Thanks a lot for any information!

>I wouldn't go for fixing the thread... Wine internals need to know when 
>a thread is started, so using clone "in its back" will inevitabely lead 
>to what you've seen => crashes around (except if the thread running 
>clone doesn't do any Win32 calls, which I doubt if you're porting your app)

>so, 1/ may be a better approach (which actually isn't implemented). And 
>it should use information from the Win32 thread API.

Thanks a lot for your reply. I've added some Enter/LeaveCriticalSections
calls around the handler and it seems to make things much better (but still
far from beeing perfect).

What prevents wine from distributing timeslices correctly? Even if i
renice/boost linux kernel sheduler of the whole wine process(es) things go
wrong a lot. The processing thread gets way to small amount of attention.

Do you have some hints on how to boost the processing thread a bit? I'm
perfectly happy with an (even ugly) hack. I've tried to identify the wine
sheduler, but was unsuccesful :( Maybe you can point me in to right
direction (file, line #)?

Thanks a lot!


More information about the wine-devel mailing list