举例说明实现线程同步的三种方式