On Thu, 03 Jun 2010 17:39:07 -0400, Adam Jackson <[email protected]> wrote: > On Thu, 2010-06-03 at 20:40 +0100, Daniel Stone wrote: > > > > If you're really (really, really) keen, you could try to thread not only > > input event generation, but event delivery. :) You could get away with > > it fairly easily at first[0] by just having a single mutex which is > > taken both by the input thread, and by any operation which modifies the > > window stack, input shape, etc, in any way. > > ... and anything that touches the client's output buffer?
Sounds like a good plan! Nevertheless, I wonder how many of Daniel's threefold "really" refer to the inherent complexity of threading event delivery, and how many of them concern the obviously huge amout of mechanical work needed to acquire and release the aforementioned mutex by certain of those routines which encompass the server dispatch tables. Any idea? Digging deeper, I see that Tiago himself faced these same considerations during one of his participations on GSoC, having opted to a more conservative approach due to an unfortunate lack of time. http://vignatti.wordpress.com/2008/08/18/parallel-events-panic-with-x/ Deviating a little from the above: do you think that a multithreaded X server capable of servicing client requests concurrently is a realistic goal for the long run? In particular, do you foresee any possible devilish traps resulted by interactions between threaded event delivery and threaded request processing? > - ajax _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
