Trước đó,Posix threads, còn gọi là pthreads, là một bộ Procedure Call (cuộc gọi thủ tục) cũng đã được phát triển để sử dụng trong ngôn ngữ C. Tuy nhiên, pthreads bị coi là cồng kềnh vì nó đòi hỏi lập trình viên phải thực hiện quá nhiều thao tác để đảm bảo những luồng dữ liệu khác biệt không chèn lên nhau.