Junior — Middle
პროგრამირებაში ატომური ოპერაციების დანიშნულება და გამოყენება რა არის?
sobes.tech AI
პასუხი AI-სგან
پروگرامنگ ۾ اٽومڪ آپريشنز اهي آپريشنز آهن جيڪي يا مڪمل طور تي انجام ڏنل آهن يا ڪڏهن به ناهن، بغير ڪنهن وچولي حالت جي جيڪا ٻين ٿريڊن کي نظر اچي ٿي. اهي ملٽي ٿريڊ ماحولن ۾ صحيح ڪم کي يقيني بڻائڻ لاءِ اهم آهن، جتي ڪيترائي ٿريڊ گڏجي شيئر ٿيل ڊيٽا کي تبديل ڪري سگهن ٿا.
اٽومڪ آپريشنز جو استعمال ريس حالتن (race conditions) کان بچڻ ۽ ڊيٽا جي هم آهنگي کي يقيني بڻائڻ لاءِ مدد ڪري ٿو، بغير ڪنهن ڳري لاڪنگ جي.
Java ۾، java.util.concurrent.atomic پيڪيج مان ڪلاسز موجود آهن، جهڙوڪ AtomicInteger:
import java.util.concurrent.atomic.AtomicInteger;
public class Counter {
private AtomicInteger count = new AtomicInteger(0);
public void increment() {
count.incrementAndGet(); // اٽومڪ واڌ 1 سان
}
public int getCount() {
return count.get();
}
}
هتي، incrementAndGet() طريقو يقيني بڻائي ٿو ته ڳڻپيوڪر جو واڌو اٽومڪ طور تي ٿيندو، جيتوڻيڪ ڪيترائي ٿريڊ ان کي ساڳئي وقت سڏين ٿا.