9、Java中的多线程同步机制包括 synchronized Lock、volatile等关键字,用于保证线程安全。以下哪个关键字可以保证可见性和禁止指令重排序? Asynchronized B. Lock C. volatile D. wait/notify
时间: 2024-04-20 10:27:09 浏览: 169
详谈Java多线程的几个常用关键字
C. volatile关键字可以保证可见性和禁止指令重排序。使用volatile修饰的变量,对它的写操作会立即刷新到主内存中,对它的读操作也会从主内存中读取最新值。同时,volatile关键字还可以禁止指令重排序,保证了程序的正确性。A. synchronized关键字可以保证线程间的互斥性和可见性,但不能保证禁止指令重排序。B. Lock是一个可重入的互斥锁,和synchronized类似,但是不能保证可见性和禁止指令重排序。D. wait/notify是线程间协作的机制,可以实现线程的等待和唤醒,但不能保证可见性和禁止指令重排序。
阅读全文