Which of the following is true regarding the synchronized keyword in NAME_1?

1
It can be used to prevent code optimization by the compiler

2
It can be used to ensure that only one thread can access a block of code at a time

3
It is used to ensure that a block of code is executed atomically

4
It is used to forcefully terminate a thread that has not completed a task Provide two versions of response separated with exactly 6 asterisk symbols: ******.
user