If I just use synchronized, not wait/notify method, will it still keep thread-safe ?
What's the difference ?
Thx in advance.
synchronized makes a method / block accessible by only on thread at a time. So, yes, it's thread-safe.
The two concepts are combined, not mutually-exclusive. When you use
wait() you need to own the monitor on that object. So you need to have
synchronized(..) on it before that. Using
.wait() makes the current thread stop until another thread calls
.notify() on the object it waits on. This is an addition to
synchronized, which just ensures that only one thread will enter a block/method.