java - 在带有 var=Thread.currentThread() 的代码块上同步(...)

标签 java multithreading runnable

<分区>

我正在阅读这个类的代码:

public class MultiThreadedServer implements Runnable {
    // some more code
    protected Thread runningThread = null;

    public void run() {
        synchronized(this) {
            this.runningThread = Thread.currentThread();
        }
        // lots of code
    }
}

这是什么意思?线程本身用作锁定资源的标志?我完全不明白。

有人知道吗?

最佳答案

this 是一个 Runnable,而不是一个线程,因此在您编写时同步不是在线程本身上完成。

这可能有点令人困惑,但如果例如。该对象由多个并发线程访问。

干杯,

关于java - 在带有 var=Thread.currentThread() 的代码块上同步(...),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30525874/

相关文章:

java - 高效加载媒体缩略图

java - 在 junit 3 中模拟一个具体类

java - 使用Gson在java中将LocalDateTime序列化和反序列化为RFC 3339格式的JSON

java - 如何在这个项目中使用枚举?

java - 多客户端/服务器。处理通讯

iphone - 多次下载文件而不锁定 ios 中的 UI

java - 可运行处理程序未在 fragment 内执行。无法启动可运行的

java - 创建一个生成另一个给定函数的 x 和 y 值的方法

android - 简单的 Android 二进制文本时钟

java - 带有 JWS 的 xsd 注释