Simulasi Produsen – Konsumen Untuk Menyelesaikan Problem Mutual Exclusion Pada Market - Khairul Ummi; Zulfrida Andayani (Jurnal Eksplora Informatika, 2014)
Kasus producer-consumer digunakan sebagai ilustrasi pembahasan sinkronisasi. Kasus producer-consumer berisi masalah mutual-exclusion dan sinkronisasi. Kasus ini sering juga disebut sebagai bounded-buffer problem (masalah buffer dengan jumlah terbatas). Agar mencapai tujuan secara benar, proses-proses harus mensinkronkan kegiatan-kegiatannya untuk menghindari kondisi deadlock (malapetaka). Proses-proses yang berinteraksi memerlukan sinkronisasi agar terkendali dengan baik. Deadlock terjadi ketika proses-proses mengakses sumber daya secara eksklusif. Semua deadlock yang terjadi melibatkan persaingan untuk memperoleh sumber daya eksklusif oleh dua proses atau lebih. Gagasan dasar penghindaran deadlock adalah hanya memberi akses ke permintaan sumber daya yang tidak mungkin menimbulkan deadlock. Strategi ini biasanya diimplementasikan dengan pengalokasi sumber daya memeriksa dampak-dampak pemberian akses ke suatu permintaan. Agar dapat mengevaluasi safe-nya system individu, penghindaran deadlock mengharuskan semua proses menyatakan jumlah kebutuhan sumber daya maksimum sebelum eksekusi. Begitu eksekusi dimulai, tiap proses meminta sumber daya saat diperlukan sampai batas maksimum. Proses-proses yang menyatakan kebutuhan sumber daya melebihi kapasitas total system tidak dapat dieksekusi.shared-memory merupakan solusi ke masalah bounded-buffer yang mengijinkan paling banyak n-1 materi dalam buffer pada waktu yang sama. Suatu solusi, jika semua N buffer digunakan tidaklah sederhana.Pada producer-consumer, dimulai dari 0 dan masing-masing waktu tambahan dari suatu item baru diberikan kepada buffer.