//package cn.superdesk.uniorder.queue.redis.model002;
//
//import cn.superdesk.uniorder.dao.entity.accounting.unified.supplier.AccountingUnifiedSupplier;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.data.redis.core.RedisTemplate;
//import org.springframework.stereotype.Component;
//
//import javax.annotation.PostConstruct;
//import javax.annotation.Resource;
//import java.util.List;
//import java.util.Map;
//import java.util.concurrent.ExecutorService;
//import java.util.concurrent.Executors;
//import java.util.function.Consumer;
//
//
///**
// * @Description: 基于redis队列 任务管理器
// * @Author: linjinyu
// * @CreateDate: 2021/2/4 上午10:09
// * @UpdateUser: linjinyu
// * @UpdateDate: 2021/2/4 上午10:09
// * @UpdateRemark: 修改内容
// * @Version: 1.0
// */
//@Slf4j
//@Component
//public class RedisTaskContainer {
//
//	private static int runTaskThreadNum = 2;//Runtime.getRuntime().availableProcessors()
//
//	// 使用一个统一维护的线程池来管理隔离线程
//	private static ExecutorService executorService = Executors.newFixedThreadPool(runTaskThreadNum);
//
//	@Resource
//	private RedisTemplate redisTemplate;
//
//	public static String ORDER_SEND_REDIS_QUEQUE = "order:send:redis:queue";
//
//	// 队列里边的数据泛型可以根据实际情况调整, 可以定义多个类似的队列
//	private RedisQueue<Map<String, List<AccountingUnifiedSupplier>>> redisQueue = null;
//
//	@PostConstruct
//	private void init() {
//
//		redisQueue = new RedisQueue(redisTemplate, ORDER_SEND_REDIS_QUEQUE);
//
//		Consumer<Map<String, List<AccountingUnifiedSupplier>>> consumer = (data) -> {
//			// do something
//		};
//
//		// 提交线程
//		for (int i = 0; i < runTaskThreadNum; i++) {
//			executorService.execute(
//					new OrderSendRedisConsumer(this, consumer)
//			);
//		}
//	}
//
//	public RedisQueue<Map<String, List<AccountingUnifiedSupplier>>> getRedisQueue() {
//		return redisQueue;
//	}
//
//}
