let tab = Array.make 10 0;; (* tableau global non protégé *)

let modif_tab x =
  for i = 0 to Array.length tab - 1 do
    tab.(i) <- x;
    Thread.delay (Random.float 0.1)
  done;
;;

let t1 = Thread.create modif_tab 1;;
let t2 = Thread.create modif_tab 2;;
let t3 = Thread.create modif_tab 3;;
let t4 = Thread.create modif_tab 4;;
Thread.join t1;;
Thread.join t2;;
Thread.join t3;;
Thread.join t4;;
Array.iter print_int tab;;