关于网友提出的“ 公司业务弄晕了,关于支付网关”问题疑问,本网通过在网上对“ 公司业务弄晕了,关于支付网关”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 公司业务弄晕了,关于支付网关
描述: 经理给了我个流程图,有个流程是 通知异步服务-->排队处理并定时发送.如果用线程怎么做到<排队处理并定时发送>...
或者谁能帮我解说一下关于支付网关的流程,...排队处理并定时发送>
解决方案1: java.util.concurrent 包中的实现类都是非常高效的线程安全实现,可以将这个包中类的实例在多线程中共享,而不需要自己再控制同步锁。
解决方案2: 如果有优先级的话,可以使用 java.util.concurrent.PriorityBlockingQueue
这些 BlockingQueue 都是线程安全的,并且是一个阻塞队列,也就是说不需要使用定时任务去定时发送,可以使用 BlockingQueue 的 take() 方法,如果队列中有数据就会取出并从队列中移除,如果队列为空,则 take 方法会被阻塞住(就是一直在 take 方法中等待),一旦另一个线程往队列中塞了东西,那么被阻塞的 take 会被唤醒。
发送线程应该是类似于这样的代码:
while(!Thread.currentThread().isInterrupted()) {
Xxxxx xx = queue.take();
......
}
以上介绍了“ 公司业务弄晕了,关于支付网关”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3167119.html