【问题标题】:Is it possible to schedule a task on the Websocket delivery thread?是否可以在 Websocket 交付线程上安排任务?
【发布时间】:2019-08-20 23:15:24
【问题描述】:

我正在使用 Jetty Websockets 的整个消息传递功能。 在这种情况下,Joakime says保证Websocket消息按顺序传递。

我将冒险假设所有 Websocket 事件处理方法都将由同一个线程调用。

现在,假设外部计时器到期,我需要通过 websocket 发送消息。计时器在一个线程中运行,而 Websocket 事件在另一个线程中运行。

我是否需要让我的 Websocket 事件处理程序线程安全(因为它们的状态将被计时器和 Websocket 线程访问)?或者有没有办法让定时器线程将任务传递给Websocket线程执行?

【问题讨论】:

    标签: multithreading websocket jetty


    【解决方案1】:

    Jetty WebSocket API(Native 或 javax.websocket)不关心本地 WebSocket 端点的线程安全性。

    当它到达时它将传递下一条消息。

    注意:你可以通过Jetty Native WebSocket API控制读取线程的suspend/resume

    【讨论】:

    • 更新的答案包含暂停/恢复 api 的链接
    猜你喜欢
    • 2017-08-07
    • 2015-01-12
    • 2021-07-14
    • 2013-12-28
    • 2014-05-23
    • 2011-09-25
    • 1970-01-01
    • 2018-02-26
    • 2020-01-09
    相关资源
    最近更新 更多