ለምን Pthread_cond_wait ሙቴክስ ያስፈልገዋል?
ለምን Pthread_cond_wait ሙቴክስ ያስፈልገዋል?

ቪዲዮ: ለምን Pthread_cond_wait ሙቴክስ ያስፈልገዋል?

ቪዲዮ: ለምን Pthread_cond_wait ሙቴክስ ያስፈልገዋል?
ቪዲዮ: Mesfin Bekele -Lemin [With LYRICS] መስፍን በቀለ - ለምን |Ethiopian Music HD 2024, ግንቦት
Anonim

የ ሙቴክስ ተለዋዋጭ ሁኔታዎችን እራሱን ለመከላከል ጥቅም ላይ ይውላል. ለዚህ ነው አንተ ፍላጎት በፊትህ ተዘግቷል መ ስ ራ ት መጠበቅ. ከዚያ የሁኔታው ተለዋዋጭ ምልክት ሲደረግ ወይም ሲሰራጭ በመጠባበቂያ ዝርዝሩ ውስጥ ካሉት ክሮች ውስጥ አንድ ወይም ከዚያ በላይ ይነሳሉ እና ሙቴክስ ለዛ ፈትል በድግምት ይቆለፋል።

ይህንን በተመለከተ Pthread_cond_wait ሚክስክስን ይከፍታል?

የ phthread_cond_ይጠብቅ () ተግባር ሁኔታ ተለዋዋጭ cond ላይ የጥሪ ክር ያግዳል, እና ይከፍታል። የተያያዘው mutex mutex . የመደወያው ክር ተቆልፎ መሆን አለበት። ሙቴክስ በተለዋዋጭ ሁኔታ ላይ ከመጠባበቅዎ በፊት. ከተግባሩ ሲመለሱ, የ ሙቴክስ እንደገና ተቆልፎ እና በባለቤትነት በጥሪው ክር የተያዘ ነው።

በመቀጠል፣ ጥያቄው ሙቴክስ ለምን ያስፈልጋል? አንድ ክር ብቻ በአንድ ጊዜ ቁልፍ ኮድ እየፈጸመ መሆኑን ያረጋግጣል፣ ይህ ደግሞ የውሂብ መዋቅር መዳረሻን ይገድባል። ማንኛውም የሲፒዩ ዳግም መደርደር ምንም ይሁን ምን ሁለቱም ክሮች ለዛ ማህደረ ትውስታ ሙሉ እና ትክክለኛ እይታ እንዳላቸው ያረጋግጣል። የ ሙቴክስ በተመሳሳይ ጊዜ ፕሮግራሚንግ ሲሠራ በጣም አስፈላጊ ነው ።

ከላይ በተጨማሪ የሁኔታ ተለዋዋጮች ለምን mutex ያስፈልጋቸዋል?

የ mutex ነው ለመከላከል ጥቅም ላይ ይውላል ሁኔታ ተለዋዋጭ ራሱ። ለዚህ ነው አንተ ፍላጎት በፊትህ ተዘግቷል መ ስ ራ ት መጠበቅ. ከዚያም ጊዜ ሁኔታ ተለዋዋጭ ነው በመጠባበቂያ ዝርዝሩ ላይ ካሉት አንድ ወይም ብዙ ክሮች ምልክት የተደረገበት ወይም ያሰራጭ ያደርጋል መቀስቀስ እና የ mutex ያደርጋል ለዛ ፈትል በድግምት ተቆልፏል።

የሁኔታ ተለዋዋጮች ለምን ያስፈልገናል?

የሁኔታ ተለዋዋጮች ክሮች ስብስብ እስኪኮል ድረስ እንዲተኛ ይፍቀዱ! አንድ ክር ወይም የተኙትን ሁሉንም ክሮች መኮረጅ ይችላሉ። አንድ ክር ብቻ ካነቁ ስርዓተ ክወናው የትኛውን ክር እንደሚነቃ ይወስናል.

የሚመከር: