[TOC] Node.js基础 一、Node.js介绍 Node.js是一个javascript运行环境。它让javascript可以开发后端程序,实现几乎其他后端语言实现的所有功能,可以与PHP、Java、Python、.NET、Ruby等后端语言平起平坐。 Nodejs是基于V8引擎,V8是Go ...
分类:
Web程序 时间:
2020-03-05 20:48:43
阅读次数:
129
上节,我们提到,在异步任务程序中,一种常见的场景是,主线程提交多个异步任务,然后希望有任务完成就处理结果,并且按任务完成顺序逐个处理,对于这种场景,Java并发包提供了一个方便的方法,使用CompletionService,这是一个接口,它的实现类是ExecutorCompletionService ...
分类:
编程语言 时间:
2020-02-27 23:42:41
阅读次数:
119
注意:无特殊说明,Flutter版本及Dart版本如下: Flutter版本: 1.12.13+hotfix.5 Dart版本: 2.7.0 展示异步任务状态 当有一个Future(异步)任务需要展示给用户时,可以使用FutureBuilder控件来完成,比如向服务器发送数据成功时显示成功提示: 效 ...
分类:
其他好文 时间:
2020-02-25 20:04:37
阅读次数:
58
ES7 中的 async 及 await就是 Generator 以及 Promise 的语法糖,内部的实现原理还是原来的,只不过是在写法上有所改变,这些实现一些异步任务写起来更像是执行同步任务。 一个函数前加上 async关键字,就将该函数返回一个 Promise,async 直接将返回值使用 P ...
分类:
其他好文 时间:
2020-02-22 22:21:07
阅读次数:
77
RedisQueue是一款轻量级的分布式异步任务队列调度框架,基于redis数据库作为broker,生产端将任务job存储到redis数据库中,消费端监听队列并取出任务执行。 1.基础架构 rq框架使用前需要安装rq库,使用pip安装即可:pip install rq 1.1 生产者 生产者将任务发 ...
分类:
编程语言 时间:
2020-02-21 18:40:13
阅读次数:
156
简单使用 安装celery及redis 定义celery任务 项目下新建tasks.py from celery import Celery # 创建一个Celery类的实例对象 app = Celery('celery_task.tasks', broker='redis://127.0.0.1: ...
分类:
其他好文 时间:
2020-02-20 00:20:27
阅读次数:
114
前提 最近在看JUC线程池 的源码实现,其中了解到 的实现原理。从目前 的实现来看,虽然实现了异步提交任务,但是任务结果的获取过程需要主动调用 或者 ,而前者是阻塞的,后者在异步任务执行时间不确定的情况下有可能需要进行轮询,这两种情况和异步调用的初衷有点相违背。于是笔者想结合目前了解到的 实现原理的 ...
分类:
编程语言 时间:
2020-02-17 00:37:33
阅读次数:
73
异步任务、定时任务、邮件任务 一、异步任务 在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的;但是在处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用多线程来完成此类任务,其实,在Spring 3.x之后,就已经内置了@Async来完美解决这个问题。 两个注解: ...
分类:
编程语言 时间:
2020-02-15 21:54:17
阅读次数:
96
微信API 网络请求 HTTP请求:wx.request(对象),主要是注意这个请求的异步特性,如果要同步执行,需要一些技巧,应该有个函数可调 文件上传下载:上传函数wx.uploadFile(对象),下载文件wx.downloadFile(对象) Task网络任务对象:异步任务提交以后,需要对任务 ...
分类:
微信 时间:
2020-02-14 10:58:03
阅读次数:
96
先看同步的情况: AysncService.java package com.gong.spingbootes.service; import org.springframework.scheduling.annotation.Async; import org.springframework.st ...
分类:
编程语言 时间:
2020-02-12 13:19:06
阅读次数:
81