anchor.diff:  === *Что такое ordering, visibility, atomicity, happend-before, mutual exclusion на примере synchronized?*
   
   *Ordering* - компилятору запрещено переставлять инструкции в критической
  -секции, выделенной с помошью *synchronized* с остальными инструкциями. 
  +секции, выделенной с помощью *synchronized* с остальными инструкциями. 
   То есть все операции выполняются до входа в критическую секцию и ни одна
   не начинается после ее окончания.
   
  
positive.code: время как в `Runnable` этого делать не позволяет. Исключение нужно 
  оборачивать в непроверямое.
  
  === *Преимущества SheduledThreadPool перед java.util.Timer*
  
  * Можно задать несколько потоков для выполнения задач
  * Не умирает при возникновение исключения
  
negative.code: условие для продолжения (появилось свободное место в очереди). 
  
  В Java можно добиться с помощью механизма `wait`/`notify` или класса
  `Condition` и помощью методов `await`/`signal`.
  
  ==  java.util.concurrent: Пулы потоков, Future
  
  