如何通过多线程和锁机制巧妙解决并发难题?