12.5. 调度延迟工作


AMQ C++ 能够延迟后执行代码。您可以使用它来实现应用程序中的基于时间的行为,如定期调度的工作或超时。

要延迟固定时间的工作,请使用 schedule 方法设置延迟并注册定义工作的功能。

示例:在延迟后发送消息

void on_sender_open(proton::sender& snd) override {
    proton::duration interval {5 * proton::duration::SECOND};
    snd.work_queue().schedule(interval, [=] { send(snd); });
}

void send(proton::sender snd) {
    if (snd.credit() > 0) {
        proton::message msg {"hello"};
        snd.send(msg);
    }
}
Copy to Clipboard Toggle word wrap

本例在发件人的工作队列中使用 schedule 方法,以将其建立为工作的执行上下文。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat