Sobes.tech
Junior — Middle

შეგიძლიათ ახსნათ მკითხველ-წერილთა მექანიზმის კონცეფცია და მისი გამოყენება?

sobes.tech AI

პასუხი AI-სგან

অধিগম্যতা-লেখক মেকানিজমটি একটি সাধারণ সম্পদে প্রবেশের সিঙ্ক্রোনাইজেশনের ধারণা, যেখানে একাধিক থ্রেড একসাথে ডেটা পড়তে পারে, কিন্তু লেখাটি একচেটিয়াভাবে হতে হবে।

মূল ধারণা:

  • একাধিক পাঠক একসাথে সম্পদে প্রবেশ করতে পারে, ব্লক ছাড়াই, কারণ পড়া অবস্থা পরিবর্তন করে না।
  • লেখার জন্য একচেটিয়া প্রবেশাধিকার প্রয়োজন, যাতে সংঘর্ষ এড়ানো যায় এবং ডেটার অখণ্ডতা নিশ্চিত হয়।

iOS-এ প্রয়োগ হতে পারে, উদাহরণস্বরূপ, সাধারণ ডেটা বা ক্যাশের সাথে কাজ করার সময়, যেখানে একাধিক সমান্তরাল পড়ার অনুমতি দেওয়া গুরুত্বপূর্ণ, কিন্তু লেখার সময় প্রবেশাধিকার ব্লক করে দেওয়া উচিত যাতে রেস কন্ডিশন এবং ডেটা ক্ষতি এড়ানো যায়।

Swift-এ DispatchQueues ব্যবহার করে উদাহরণ:

let concurrentQueue = DispatchQueue(label: "com.example.readersWriters", attributes: .concurrent)
var sharedResource = [String]()

func readData() {
    concurrentQueue.sync {
        print("ডেটা পড়া: \(sharedResource)")
    }
}

func writeData(newValue: String) {
    concurrentQueue.async(flags: .barrier) {
        sharedResource.append(newValue)
        print("ডেটা লিখা হয়েছে: \(newValue)")
    }
}

এখানে, পড়া সমান্তরালভাবে ঘটে, এবং লেখা .barrier পতাকা দিয়ে ব্লক করে, একচেটিয়া প্রবেশাধিকার নিশ্চিত করে।