多线程实际运用(十个线程插入1000条数据)

时间:2025-03-30 13:34:16

在实际运用中,利用多线程进行数据处理分担压力

此例子是模拟实际生产中利用10个线程处理10W条数据(模拟1000条)的数据插入操作

public class MyTest implements Runnable {
	/**
	 * 自增ID
	 */
	private static int incrementId = 1;

	public synchronized static int getincrementId() {
		return incrementId++;
	}
	
	public void run() {
		int id = 0;
		while ((id = getincrementId()) <= 1000) {
			("插入数据主键:" + id + " 当前线程" + ().getName() + " ");
		}
	}
	
	public static void main(String[] args) {

		for (int i = 1; i <= 10; i++) {
			Thread thread = new Thread(new MyTest());
			("线程" + i);
			();
		}
	}
}

通过控制台的打印就可以很清楚的发现线程之间在相互作业,互不影响,synchronized 利用将自增方法包裹,实现了,线程之间的安全问题,也可以用Lock锁实现,同理