第 3 章 事件驱动的 API


AMQ 客户端提供的许多 API 都是异步、事件驱动的 API。其中包括 C++、JavaScript、Python 和 Ruby API。

这些 API 通过执行应用程序事件处理功能来响应网络活动,从而发挥作用。库监控网络 I/O,并触发事件。事件处理程序按顺序在主库线程上运行。

由于事件处理程序在主库线程上运行,处理程序代码不得包含任何长时间运行的阻止操作。在事件处理程序中阻止所有库执行.如果您需要执行较长的阻塞操作,则必须在一个单独的线程中调用它。事件驱动的 API 包括跨线程通信功能,以支持库线程和应用程序线程之间的协调。

避免在事件处理程序中阻塞

在事件处理程序中长时间运行的阻止调用会停止所有库执行,从而阻止库处理其他事件并执行定期任务。始终在单独的应用程序线程中启动长时间运行的阻止程序。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.