Java possui suporte a definição de métodos synchronized, os quais:
- A. Permitem a sincronização com outros métodos synchronized da mesma classe, de modo que possam iniciar sua execução exatamente juntos a partir de diferentes threads.
- B. Permitem a sincronização com outros métodos synchronized da mesma e de outras classes, de modo que possam iniciar sua execução exatamente juntos a partir de diferentes threads.
- C. Habilitam o monitor de um objeto, que garante exclusão mútua entre threads que tentam executar seus métodos synchronized em um dado momento.
- D. Habilitam o uso do relógio de tempo real no objeto, que é sincronizado com o relógio atômico e, assim, tem mais alta precisão se comparado com o relógio do sistema.
- E. Permitem monitorar sua execução, para que outras ações no mesmo objeto possam ser sincronizadas para execução obrigatoriamente em paralelo.