由于计算机多任务、多进程、多线程的支持,使得计算机资源的服务效率提高,服务器对请求的也使用线程来相应,所有,代码中涉及到同时对共享数据的操作,将在
多线程环境中操作数据,导致数据安全问题。
经典例子:老婆(朱丽叶)老公(罗密欧),使用银行卡和存折,或者网银等,同时对同一账户操作的安全问题。
如果要保证多线程下数据安全,就要实现线程同步(例如:一间小厕所,就得有一个锁,保证同一时间为一个人服务)。其他文章讲:
此处用多线程实现,同时取款的模拟实现,未进行线程同步操作,查看取款安全隐患问题,代码如下:
银行账户:
package com.tsxs.bank;
public class BankAcco