gpt4 book ai didi

c - 增加 FD_SETSIZE 的限制并选择

转载 作者:IT王子 更新时间:2023-10-29 00:21:14 24 4
gpt4 key购买 nike

我想为我的系统增加 FD_SETSIZE 宏值。有什么办法可以增加 FD_SETSIZE 这样 select 就不会失败

最佳答案

根据标准,无法增加 FD_SETSIZE。一些程序和库(想到 libevent)试图通过为 fd_set 对象分配额外空间并将大于 FD_SETSIZE 的值传递给 FD_* 来解决这个问题 宏,但这是一个非常糟糕的主意,因为健壮的实现可能会对参数执行边界检查并在超出范围时中止。

我有一个应该始终有效的替代解决方案(即使它不是标准所要求的)。代替单个 fd_set 对象,分配一个足够大的数组来容纳您需要的最大 fd,然后使用 FD_SET(fd%FD_SETSIZE, &fds_array[fd/FD_SETSIZE]) 等访问集合。

关于c - 增加 FD_SETSIZE 的限制并选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7976388/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com