android Null reference used for synchronization (monitor-enter)

错误信息

03-06 15:43:31.341 E/AndroidRuntime( 1612): *** FATAL EXCEPTION IN SYSTEM PROCESS: EthernetServiceThread
03-06 15:43:31.341 E/AndroidRuntime( 1612): java.lang.NullPointerException: Null reference used for synchronization (monitor-enter)
03-06 15:43:31.341 E/AndroidRuntime( 1612):  at com.android.server.ethernet.EthernetNetworkFactory$NetworkInterfaceState.updateAgent(EthernetNetworkFactory.java:428)
03-06 15:43:31.341 E/AndroidRuntime( 1612):  at com.android.server.ethernet.EthernetNetworkFactory$NetworkInterfaceState.stop(EthernetNetworkFactory.java:414)
03-06 15:43:31.341 E/AndroidRuntime( 1612):  at com.android.server.ethernet.EthernetNetworkFactory$NetworkInterfaceState.onIpLayerStarted(EthernetNetworkFactory.java:348)
03-06 15:43:31.341 E/AndroidRuntime( 1612):  at com.android.server.ethernet.EthernetNetworkFactory$NetworkInterfaceState$1.lambda$onProvisioningSuccess$0(EthernetNetworkFactory.java:265)
03-06 15:43:31.341 E/AndroidRuntime( 1612):  at com.android.server.ethernet.-$$Lambda$EthernetNetworkFactory$NetworkInterfaceState$1$9XedDO1NtZ_RFArLiXxHcePnujQ.run(Unknown Source:4)
03-06 15:43:31.341 E/AndroidRuntime( 1612):  at android.os.Handler.handleCallback(Handler.java:873)
03-06 15:43:31.341 E/AndroidRuntime( 1612):  at android.os.Handler.dispatchMessage(Handler.java:99)
03-06 15:43:31.341 E/AndroidRuntime( 1612):  at android.os.Looper.loop(Looper.java:193)
03-06 15:43:31.341 E/AndroidRuntime( 1612):  at android.os.HandlerThread.run(HandlerThread.java:6

这个原因时我们的锁对象被复制为null了
修改

private Object mObject = new Object();

synchronized (mObject) {
    mNetworkAgent.sendNetworkCapabilities(mCapabilities);
    mNetworkAgent.sendNetworkInfo(mNetworkInfo);
    mNetworkAgent.sendLinkProperties(mLinkProperties);
    // never set the network score below 0.
    mNetworkAgent.sendNetworkScore(mLinkUp ? NETWORK_SCORE : 0);
}
发布了376 篇原创文章 · 获赞 40 · 访问量 46万+

猜你喜欢

转载自blog.csdn.net/wangjicong_215/article/details/104697749
今日推荐