Explication
1. Lorsque le programme effectue une opération de lecture ou d'écriture sur une variable volatile, toutes les modifications par rapport à l'opération précédente doivent être apportées. Cette dernière opération a été vue. Cette dernière opération n'a pas encore été réalisée.
2. Lors de l'optimisation des instructions, vous ne pouvez pas mettre la phrase pour l'accès aux variables volatiles à la fin, ni la phrase pour l'accès aux variables volatiles au début.
Les variables générales peuvent uniquement garantir que la méthode peut obtenir des résultats corrects à tous les endroits qui dépendent des résultats d'autorisation lors de l'exécution, mais ne peuvent pas garantir que leur ordre est cohérent avec l'ordre d'exécution du code du programme.
Instances
volatile boolean initialized = false; // 下面代码线程A中执行 // 读取配置信息,当读取完成后将initialized设置为true以通知其他线程配置可用 doSomethingReadConfg(); initialized = true; // 下面代码线程B中执行 // 等待initialized 为true,代表线程A已经把配置信息初始化完成 while (!initialized) { sleep(); } // 使用线程A初始化好的配置信息 doSomethingWithConfig();
Les collections en Java sont principalement divisées en quatre catégories :
1. 3. Collection d'ensembles : non répétable ;
4. Mappage de cartes : non ordonné, avec des clés uniques et des valeurs non uniques.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!