就管他叫“使用多线程分段获取大量数据方法”吧。假定我们的需求是,通过Web Service获取10W条订单,我的解决方案是 分成10个线程每个线程传输1W条订单分段获取,具体请看下面的流程图及其说明
1,流程图
2,流程说明:
线程1开始请求接口获取1W条数据,当数据成功获取后,接口是闲置的,这时我们开始线程 2获取数据,同时线程1继续执行获取数据的后续工作,如果转换数据,这里我用的办法是,使用预先定义的实体对象格式 反序列化XML (据说这种方式比遍历XML或是载入到DataSet中循环 读取都要高效的,具体我没有测试过,哈哈)将数据插入到数据后停止线程1。使用这样线程循环的办法处理所有线程读取数据。