【发布时间】:2026-02-10 22:20:07
【问题描述】:
我需要根据在套接字接收器线程中接收到的套接字数据更改我的 GUI 窗口的标题。我想知道有没有办法将int、long 等变量传递给Platform.runLater,以避免仅用于访问int 变量的互斥锁。这是一个示例代码:
// Receiver Socket thread
int opnMode = byteBuffer.getInt();
Platform.runLater(() -> { //GUI thread
((Stage) Fx.Pane.getScene().getWindow()).setTitle("Operation mode " + " (" + opnMode + ")");
});
在上面的代码中,我使用变量opnMode 而不使用互斥锁,因为它被两个线程访问。
【问题讨论】:
-
如果
opnMode是一个局部变量,那么您无需担心(至少基于提供的当前代码,这不是minimal reproducible example)。