我正在寻找具有某些特定需求的异步http客户端库:
为了将它作为glibmm源进行处理,必须有权访问其文件描述符,创建一个Glib :: PollFD对象,我应该好好去。
我一直在看几个库,这些库都有一些问题:
任何人都可以克服我在这些树库中看到的问题,或建议其他库吗?
答案 0 :(得分:0)
Glib :: PollFD :: PollFD(int fd)是您想要的构造函数。 fd_set只是一组整数fds。单词“set”在数学意义上使用,即在一个集合中不能出现多次fd,因此它们不将其称为数组或列表。 fd_set只是一个固定大小的缓冲区。通过制作一个fd_set并向其添加一些fds来尝试它,然后在调试器中查看它或者只是以十六进制转储它。
这是异步编程中常见的模式,您需要加入两个异步事件循环。虽然您可以使用超时轮询两个循环,但通常最好从一个事件循环中获取原始fds并添加它们