Re: [AD] keyboard hang, linux, 4.1.8 |
[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
> Would it not be feasible to make the bg_man thread hold the mutex only a
> very short time ?
After thinking a little more about this problem, I think that my approach was
too naive. Such a deadlock can't occur under Windows under "normal"
circumstances, but I think the following construct is vulnerable:
acquire_screen();
show_mouse(NULL);
release_screen();
So my approach that makes use of a specialized mutex for the timer
synchronization without taking into account the other mutexes is quite
flawed. A safe method would be to use only one big mutex per platform, but it
would unnecessarily block the threads in many circumstances.
Therefore I'm going to #undef ALLEGRO_MULTITHREADED on all platforms for the
time being, until I come up with a more sensible approach. I also plan to
release the 4.1.9 WIP shortly afterwards.
--
Eric Botcazou