From: Vincent T. <vt...@un...> - 2007-04-16 21:38:41
|
On Mon, 16 Apr 2007, Brian Mattern wrote: > On Mon, Apr 16, 2007 at 10:07:37PM +0200, Vincent Torri wrote: > > in that case, could you wrap up the _fetch() call into the _get() one, > and get rid of the global that stores the reply between the two calls? no, I can't, because some ecore_x call might need the same reply. For example ecore_x_drawable_geometry_get and ecore_x_drawable_border_width_get (iirc the names). If I put the _fetch into the reply, then there would be one round trip if someone wants to get the geometry and the reply of the same drawable. One solution would be to provide a function that returns all the properties a reply can give. > The problem i see is that for prefetch to really serve any purpose, the > code has to hit the event loop between prefetch and fetch/get. It will > be hard to guarantee that no code gets called in between that does a > full prefetch/fetch/get cycle (which would then be out of order). > > I haven't looked at xcb's api, but what are the cookies for if not to > allow one to fetch in a different order than prefetched? XCB just do the minimal thing: it sends data to the X server and gets data from the X server. It does not store a list of requests/replies. I already asked that question (the order of requests/replies) to XCB devs 2 years ago, btw. Vincent |