xcb_sync_query_fence(3)
β¨ xcb_sync_query_fence β¨
okay bestie, welcome to xcb_sync_query_fence from the XCB Requests corner of the X world π this one lives in the libxcb manual, and we're gonna read it together like it's a group chat thread. no skimming, no skipping, we're doing the whole thing π«Ά
πΈ NAME πΈ
xcb_sync_query_fence β and that's it. fr fr, the description line is literally empty in the original. she's mysterious. she's giving main character energy with no caption π
π SYNOPSIS π
first thing you need, always:
#include <xcb/sync.h>
π« Request function π«
xcb_sync_query_fence_cookie_t
xcb_sync_query_fence(xcb_connection_t *conn,
xcb_sync_fence_t fence);
π« Reply datastructure π«
typedef struct xcb_sync_query_fence_reply_t {
uint8_t response_type;
uint8_t pad0;
uint16_t sequence;
uint32_t length;
uint8_t triggered;
uint8_t pad1[23];
} xcb_sync_query_fence_reply_t;
π« Reply function π«
xcb_sync_query_fence_reply_t
*xcb_sync_query_fence_reply(xcb_connection_t *conn,
xcb_sync_query_fence_cookie_t cookie, xcb_generic_error_t **e);
so you fire off the request, you get a cookie back, and then you trade that cookie in with the reply function. iconic two-step. periodt β¨
π¦ REQUEST ARGUMENTS π¦
connβ the XCB connection to X11. your lil lifeline to the server, she's everything πfenceβ TODO: NOT YET DOCUMENTED. yeah. the docs really said "we'll get to it" π no cap, that's what it says.
π REPLY FIELDS π
response_typeβ the type of this reply, which in this case isXCB_SYNC_QUERY_FENCE. this field also shows up in thexcb_generic_reply_t, and it's literally how you tell your replies apart from each other, so don't sleep on it πsequenceβ the sequence number of the last request that got processed by the X11 server. the receipts, basically π§Ύlengthβ how long the reply is, in words. and yes bestie, a word here is4bytes. that's just the rules πtriggeredβ TODO: NOT YET DOCUMENTED. another one. she said "mystery" and meant it π
π DESCRIPTION π
there is genuinely nothing here. the DESCRIPTION section is empty in the original. not a single word. it's giving silence, it's giving "read the rest and figure it out" π we move.
β RETURN VALUE β
you get back an xcb_sync_query_fence_cookie_t πͺ and here's the important bit: errors have to be handled when you call the reply function, xcb_sync_query_fence_reply.
but if you'd rather handle your errors in the event loop instead, use xcb_sync_query_fence_unchecked. see xcb-requests(3) for the deets on that whole situation π₯
π₯ ERRORS π₯
this request does never generate any errors. not one. zero. she's a good girl, she behaves π
πΈ SEE ALSO πΈ
nothing listed. the SEE ALSO section is empty, so there's nobody to introduce her to π₯²
π«Ά AUTHOR π«Ά
Generated from sync.xml. Contact xcb@lists.freedesktop.org for corrections and improvements β they literally put the address right there so you can slide into their inbox with fixes, and honestly? slay that they're open to it π
okay that's the whole page, bestie, you ate it up π and a cute lil sign-off for the very end: this was X Version 11, libxcb 1.17.0, page xcb_sync_query_fence(3) β go forth and query those fences, mwah π
β¨π
π¦ where this page comes from
- alpine 3.22: libxcb-doc 1.17.0-r0 Β· MIT
- alpine 3.23: libxcb-doc 1.17.0-r1 Β· MIT
- alpine 3.24: libxcb-doc 1.17.0-r2 Β· MIT
- arch rolling: libxcb 1.17.0-1 Β· X11
- centos-stream 10: libxcb-devel 1.17.0-3.el10 Β· X11
- debian trixie: libxcb-doc 1.17.0-2
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- nixpkgs unstable: libxcb 1.17.0
- opensuse-leap 16.0: libxcb-devel-doc 1.17.0-160000.2.2 Β· MIT
- ubuntu questing: libxcb-doc 1.17.0-2build1
- ubuntu resolute: libxcb-doc 1.17.0-2ubuntu1
- ubuntu stonking: libxcb-doc 1.17.0-2ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms