Avatar ·

Java में volatile कीवर्ड किसके लिए है? उदाहरणों के साथ समझाएं

सभी को नमस्ते! मैं एक शुरुआती Java डेवलपर हूँ, और हाल ही में मैं मल्टीथ्रेडिंग का सक्रिय रूप से अध्ययन कर रहा हूँ। मुझे `volatile` कीवर्ड मिला, लेकिन मैं पूरी तरह से नहीं समझ पाया कि इसकी क्या आवश्यकता है और इसे कब उपयोग करना चाहिए। मैंने एक छोटा कोड लिखा, जहाँ एक thread फ्लैग `running` को बदलता है, और दूसरा thread इसे लूप में चेक करता है। `volatile` के बिना, प्रोग्राम कभी-कभी गलत तरीके से काम करता है — दूसरा thread बदलाव नहीं देख पाता और काम करता रहता है। यहाँ मेरा कोड है: ```java public class TestVolatile { private static boolean running = true; public static void main(String[] args) throws InterruptedException { Thread worker = new Thread(() -> { while (running) { // कुछ कर रहे हैं } System.out.println("Worker रुक गया"); }); worker.star