Java主线程分配子线程

155 阅读1分钟
在实际开发过程中,我们会遇到在对数据量非常庞大的数据表进行操作时,速度会非常慢,而页面在发送数据请求的时候,
因后台相应数据慢,前台会一直处于等待的状态;在使用主线程分配子线程方式后,会避免此种情况的发生;原理是前台
发送数据请求,后台处理数据时间过长,前端都是立即相应,不会影响前端相应时间,而后端会慢慢处理!

代码示例:

@RestController
@RequestMapping("sys/foodKind")
public class FoodKindController extends AbstractController {
	ExecutorService executorService = Executors.newFixedThreadPool(2); //分配2个子线程
    
    @GetMapping("/synchroData")
	public R synchroData() {
		//子线程
		executorService.execute(new Runnable() {
	      	@Override
	      	public void run() { //开启子线程
	    	  	foodKindService.synchroData(); //数据处理
	      	}
	  	});
		return R.ok();
	}
}