gpt4 book ai didi

java - 使用监视器输入 : How should i call synchronised method?

转载 作者:太空宇宙 更新时间:2023-11-04 04:02:03 24 4
gpt4 key购买 nike

void Java_Package_Multithreading_againCallReadFile
(JNIEnv *env, jobject obj) {

if((*env)->MonitorEnter(env,obj) == JNI_OK) {
printf("Now you can call the synchronised method !");
} else {
printf("oops ! Failed to acquire the lock.");
}
}

从上面的方法我想检查我是否可以调用同步的方法并且可以被另一个线程使用。 MonitorEnter 实际检查什么。我已经阅读了它的文档,但不明白它是什么。我想要做的是,在检查调用该方法是否安全后调用该同步方法。上面的方法似乎不对,因为即使满足 if 语句,我也会得到一个 fatal error 。

最佳答案

"What i want to do is, call that synchronised method after checking if it is safe to call that method."

这没有任何意义。就叫它吧。如果该方法已经同步,则您不会添加任何值。调用“MonitorEnter”根本不会“检查调用该方法是否安全”。它要求锁定您提供的对象。

关于java - 使用监视器输入 : How should i call synchronised method?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10547684/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com