加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Linux&C:如何在多进程程序中设置文件读取优先级?

发布时间:2020-12-13 19:56:09 所属栏目:Linux 来源:网络整理
导读:这是我正在进行的任务,不,我不是在找你给我答案.我只需要有人指出我正确的方向,也许需要一行或两行示例代码. 我需要弄清楚如何在我的程序中设置文件读取操作的优先级.要点: 服务器进程接收消息并生成子进程来处理它 child尝试从消息中打开文件名,然后开始将
这是我正在进行的任务,不,我不是在找你给我答案.我只需要有人指出我正确的方向,也许需要一行或两行示例代码.

我需要弄清楚如何在我的程序中设置文件读取操作的优先级.要点:

>服务器进程接收消息并生成子进程来处理它
> child尝试从消息中打开文件名,然后开始将文件内容加载到消息队列中
>可能有多个子节点同时运行,并且初始消息包含优先级,因此某些消息可能会获得更多设备访问权限

我能想到的唯一方法(现在,无论如何)将是每次创建消息时递增计数器,并在计数器达到该进程指定优先级的给定值后执行类似sched_yield的操作.这很可能是一种可怕的,可怕的方法,但这是我现在所能想到的.赋值更多的是关于消息队列而不是其他任何东西,但我们仍然必须具有数据传输优先级.

任何帮助/指导表示赞赏:)

解决方法

让子进程池共享一个信号量.一旦孩子获得了信号量,它就可以从资源中读取预定义的字节数并将其返回给客户端.读取的字节数可以与请求的优先级相关.一旦进程读取了预定义的字节数,就释放信号量.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读