ฉันมักจะอ่านว่าการขนานและการเกิดพร้อมกันเป็นสิ่งที่แตกต่างกัน บ่อยครั้งที่ผู้ตอบ / ผู้แสดงความคิดเห็นไปถึงเท่าที่เขียนว่าพวกเขาทั้งสองแตกต่างกันอย่างสิ้นเชิง แต่ในมุมมองของฉันพวกเขาเกี่ยวข้องกัน แต่ฉันต้องการความกระจ่างเกี่ยวกับเรื่องนี้
ตัวอย่างเช่นถ้าผมอยู่บนซีพียูแบบมัลติคอร์และการบริหารจัดการที่จะแบ่งการคำนวณลงในxคำนวณขนาดเล็ก (พูดโดยใช้ส้อม / เข้าร่วม) แต่ละทำงานในหัวข้อของตัวเองฉันจะมีโปรแกรมที่มีทั้งการทำเช่นการคำนวณแบบขนาน (เพราะ ในเวลาใดก็ตามหลายเธรดจะทำงานในหลายคอร์) และพร้อมกันใช่ไหม?
ในขณะที่ถ้าฉันเพียงแค่ใช้พูด Java และจัดการกับเหตุการณ์ UI และ repaints บน Event Dispatch Thread บวกกับการรันเธรดเดียวที่ฉันสร้างขึ้นเองฉันจะมีโปรแกรมที่ทำงานพร้อมกัน (EDT + GC เธรด + เธรดหลักของฉัน ฯลฯ ) แต่ไม่ขนาน
ฉันต้องการที่จะรู้ว่าฉันได้รับสิทธินี้และหากการขนาน (ในระบบ "เดี่ยว แต่หลายแกน") หมายถึงการทำงานพร้อมกันหรือไม่?
นอกจากนี้ยังมีโปรแกรมแบบมัลติเธรดที่ทำงานบนซีพียูหลายคอร์ แต่ที่ที่เธรดต่างกันกำลังทำการคำนวณที่แตกต่างกันโดยสิ้นเชิงซึ่งถือว่าเป็นการใช้ "การขนาน"?