În domeniul programării, un monitor este o metodă de sincronizare a două sau mai multe sarcini ce folosesc o resursă comună, de obicei un dispozitiv hardware sau o mulțime de variabile. În concurența pentru monitor compilatorul sau interpretorul introduce cod, în mod „transparent” (automat și neexplicit), pentru blocarea sau deblocarea unor proceduri specificate, fără a fi nevoie ca programatorul să acceseze explicit elementele de sincronizare.
A fost inventat de Per Brinch Hansen, implementat pentru prima dată în limbajul Concurrent Pascal și folosit pentru a structura comunicarea între procese in sistemul de operare Solo.