我编写了一个死锁示例代码,然后使用VisualVM分析它,我发现对象导致死锁,它的地址在线程转储和堆转储之间是不同的。
exmaple代码是:
package com.example.chapter4;
/**
* @author Cnfn
* @date 2017/11/05
*/
public class ThreadDeadlock {
static class SyncAddRunnable implements Runnable {
int a, b;
public SyncAddRunnable(int a, int b) {