Nhiều ngôn ngữ lập trình và hệ điều hành trước đây không hỗ trợ lập trình đa tuyến đoạn. Do đó, các phần mềm truyền thống thường được viết bằng các ngôn ngữ lập trình theo hướng thủ tục và được biên dịch thành dạng mã máy để máy có thể hiểu được. Bộ xử lý trung tâm đọc mã máy này và thực hiện tuần tự các lệnh. Thời gian thực hiện một lệnh phụ thuộc vào bản chất của lệnh đó.
Ưu điểm của lập trình hướng thủ tục này là sự đơn giản. Nếu một lệnh nào đó không được hoàn thành thì lệnh tiếp theo cũng sẽ không được thực hiện. Người lập trình có thể dự đoán trạng thái của máy tại bất kỳ thời điểm nào cho trước.
Tham khảo tại https://docs.oracle.com/javase/tutorial/essential/concurrency/runthread.html