প্রসঙ্গ পরিবর্তনশীল এর প্রেক্ষাপটের উপর নির্ভর করে বিভিন্ন মান থাকতে পারে। থ্রেড-লোকাল স্টোরেজের বিপরীতে যেখানে প্রতিটি এক্সিকিউশন থ্রেডের একটি ভেরিয়েবলের জন্য আলাদা মান থাকতে পারে, একটি প্রসঙ্গ ভেরিয়েবল একটি এক্সিকিউশন থ্রেডে একাধিক প্রসঙ্গ হতে পারে। এটি সমসাময়িক অ্যাসিঙ্ক্রোনাস কাজগুলিতে ভেরিয়েবলের ট্র্যাক রাখার জন্য দরকারী৷
ContextVar ক্লাসটি প্রসঙ্গ ভেরিয়েবলের সাথে ডিক্লেয়ার করতে এবং কাজ করতে ব্যবহৃত হয়।
import contextvars name = contextvars.ContextVar("name", default = 'Hello')
ঐচ্ছিক ডিফল্ট প্যারামিটারটি ContextVar.get() দ্বারা ফেরত দেওয়া হয় যখন বর্তমান প্রসঙ্গে ভেরিয়েবলের কোনো মান পাওয়া যায় না।
নাম: ভেরিয়েবলের নাম। এটি একটি শুধুমাত্র পঠনযোগ্য সম্পত্তি৷
৷নিম্নলিখিত পদ্ধতিগুলি কনটেক্সটভার ক্লাসে সংজ্ঞায়িত করা হয়েছে
get() | বর্তমান প্রসঙ্গের জন্য প্রসঙ্গ ভেরিয়েবলের জন্য একটি মান ফেরত দিন। বর্তমান প্রেক্ষাপটে ভেরিয়েবলের কোনো মান না থাকলে, পদ্ধতিটি −
|
set() | বর্তমান প্রসঙ্গে প্রসঙ্গ ভেরিয়েবলের জন্য একটি নতুন মান সেট করতে কল করুন। |
রিসেট() | ৷কনটেক্সটভ্যার.সেট() যে টোকেনটি ব্যবহার করা হয়েছিল তার পূর্বে কনটেক্সট ভেরিয়েবলটিকে সেটির মানটিতে রিসেট করুন। |
কনটেক্সট ভারস মডিউলে প্রসঙ্গ শ্রেণী হল প্রসঙ্গ বর্ণের তাদের মানগুলির একটি ম্যাপিং৷
প্রসঙ্গ(): কোনো মান ছাড়াই একটি খালি প্রসঙ্গ তৈরি করে।
বর্তমান প্রসঙ্গের একটি অনুলিপি পেতে copy_context() ফাংশনটি ব্যবহার করুন।
রান (কলযোগ্য, *আর্গস, **কোয়ার্গস) পদ্ধতিটি কলযোগ্য (*আর্গস, **কোয়ার্গস) কোড নির্বাহ করে যে প্রেক্ষাপটে রান পদ্ধতিটি কল করা হয় এবং কার্যকর করার ফলাফল প্রদান করে। যেকোন কনটেক্সট ভেরিয়েবলের যেকোনো পরিবর্তন যা কলযোগ্য করে, প্রসঙ্গ অবজেক্টে থাকবে। একাধিক OS থ্রেড থেকে একই কনটেক্সট অবজেক্টে কল করা হলে বা পুনরাবৃত্তিমূলকভাবে কল করা হলে পদ্ধতিটি একটি RuntimeError উত্থাপন করে।
কপি() | প্রসঙ্গ বস্তুর একটি অগভীর অনুলিপি প্রদান করে। |
প্রসঙ্গ[var] | var ContextVar ভেরিয়েবলের মান প্রদান করে। প্রসঙ্গ বস্তুতে ভেরিয়েবল সেট করা না থাকলে, একটি কী ত্রুটি উত্থাপিত হয়। |
গেট() | প্রসঙ্গ var এর মান প্রদান করে যদি এটির প্রসঙ্গ বস্তুতে মান থাকে। অন্যথায়, এটি ডিফল্টে ফিরে আসে। যদি ডিফল্ট দেওয়া না হয়, তবে কিছুই ফেরত দিন। |
iter() | প্রসঙ্গ অবজেক্টে সংরক্ষিত ভেরিয়েবলের উপর একটি পুনরাবৃত্তিকারী প্রদান করে। |
len() | প্রসঙ্গ বস্তুতে সেট করা ভেরিয়েবলের সংখ্যা প্রদান করে। |
কী() | প্রসঙ্গ অবজেক্টে সমস্ত ভেরিয়েবলের একটি তালিকা প্রদান করে। |
মান() | প্রসঙ্গ অবজেক্টে সমস্ত ভেরিয়েবলের মানের একটি তালিকা প্রদান করে। |
আইটেম() | প্রসঙ্গ বস্তুতে সমস্ত ভেরিয়েবল এবং তাদের মান ধারণকারী 2-টুপলের একটি তালিকা প্রদান করে। |