Skip to main content

สภาพการแข่งขันคืออะไร?

เงื่อนไขการแข่งขันเกี่ยวข้องกับความพยายามของระบบหรืออุปกรณ์ส่วนบุคคลที่จะมีส่วนร่วมในการทำงานหลายอย่างโดยทั่วไปสภาพการแข่งขันมีอยู่เมื่อระบบพยายามดำเนินการสองการดำเนินการที่แตกต่างกันไปพร้อมกัน แต่ไม่สามารถทำได้เหตุผลสำหรับความล้มเหลวคือการดำเนินการไม่ได้อยู่ในลำดับที่เหมาะสมสถานการณ์สามารถนำไปสู่ระบบที่ปิดตัวลง

ในขณะที่อุปกรณ์ที่แตกต่างกันจำนวนมากได้รับการกำหนดค่าให้อนุญาตการทำงานหลายอย่าง แต่ก็ยังมีกระบวนการภายในที่สร้างลำดับชั้นของฟังก์ชั่นเพื่อให้ฟังก์ชั่นบางอย่างเกิดขึ้นฟังก์ชั่นอื่น ๆ จะต้องเกิดขึ้นล่วงหน้าในขณะที่ผู้ใช้ปลายทางรับรู้ว่าฟังก์ชั่นทั้งหมดอาจปรากฏขึ้นในเวลาเดียวกัน แต่ก็ไม่จำเป็นต้องเป็นกรณี

เงื่อนไขการแข่งขันถูกสร้างขึ้นเมื่อการดำเนินการสองครั้งขึ้นไปกำลังแย่งชิงกันเพื่อให้เสร็จสมบูรณ์ก่อนการดำเนินการอื่น ๆเมื่อฟังก์ชั่นของแต่ละบุคคลทั้งหมดได้รับการจัดเรียงอย่างเหมาะสมสิ่งนี้จะนำไปสู่การดำเนินการที่ประสบความสำเร็จของฟังก์ชั่นทั้งหมดในเวลาที่เหมาะสมอย่างไรก็ตามหากลำดับการดำเนินการถูกโยนออกจากความสมดุลสิ่งนี้จะสร้างคอขวดในสถานการณ์ที่เลวร้ายยิ่งขึ้นเงื่อนไขการแข่งขันจะทำให้ระบบเป็นไปไม่ได้ที่จะดำเนินการต่อในความพยายามที่จะประมวลผลฟังก์ชั่นทั้งหมดในลำดับที่มีส่วนร่วมในปัจจุบันเนื่องจากระบบอาจจำเป็นต้องประมวลผลฟังก์ชันที่ห้าในสตริงก่อนที่ฟังก์ชั่นแรกและวินาทีจะเสร็จสมบูรณ์สตริงทั้งหมดจะต้องถูกยกเลิกและสร้างใหม่ในลำดับที่เหมาะสม

ตัวอย่างทั่วไปของเงื่อนไขการแข่งขันเกี่ยวข้องกับการประมวลผลข้อมูลหากระบบได้รับคำสั่งให้อ่านข้อมูลที่มีอยู่ในขณะที่เขียนข้อมูลใหม่สิ่งนี้สามารถนำไปสู่ความขัดแย้งที่ทำให้ระบบปิดตัวลงในบางลักษณะระบบอาจแสดงข้อความแสดงข้อผิดพลาดบางประเภทหากจำนวนข้อมูลที่ถูกประมวลผลวางสายพันธุ์ที่ไม่เหมาะสมบนทรัพยากรที่มีอยู่หรือระบบอาจปิดตัวลงเมื่อสิ่งนี้เกิดขึ้นมักจะเป็นความคิดที่ดีที่จะรีบูตระบบและเริ่มลำดับอีกครั้งหากจำนวนข้อมูลที่ถูกประมวลผลมีความสำคัญอาจเป็นการดีกว่าที่จะอนุญาตให้มีการดูดกลืนข้อมูลใหม่ที่จะเสร็จสมบูรณ์ก่อนที่จะพยายามอ่านข้อมูลใด ๆ ที่เก็บไว้ในปัจจุบัน

ระบบหลายระบบหลีกเลี่ยงศักยภาพสำหรับสภาพการแข่งขันโดยการกำหนดลำดับความสำคัญในโปรโตคอลการดำเนินงานลำดับความสำคัญถูกกำหนดให้ทำงานได้ดีภายในความสามารถของระบบและจำกัดความสามารถของสภาพการแข่งขันในการพัฒนา