简介 Node.js 有多重并发的能力,包括单线程异步、多线程、多进程等,这些能力可以根据业务进行不同选择,帮助提高代码的运行效率。 本文希望通过读 p-limit、pm2 和 worker_threads 的一些代码,来了解 Node.js 的并发能力。 版本说明 Node.js 15.4.0 N ...
分类:
Web程序 时间:
2021-03-10 13:34:18
阅读次数:
0
线程的一些概念 ? 很多多线程是模拟出来的,真整的多线程是指有多个cpu,即多核,如服务器。如果是模拟出来的多线程,在一个cpu的情况下,同一个时间点,cpu只能执行一个代码,因为切换的快,所以就有同时执行的错觉。 ? @线程是独立的执行路径 ? @在程序运行时,即使自己没有创建线程,后台也会有多个 ...
分类:
编程语言 时间:
2021-03-09 13:33:48
阅读次数:
0
线程的状态 1. 初始(NEW):新创建了一个线程对象,但还没有调用start()方法。2. 运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running)两种状态笼统的称为“运行”。线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位 ...
分类:
编程语言 时间:
2021-03-09 13:04:51
阅读次数:
0
之前我们有在并发系列中提到 ThreadLocal 类和基本使用方法,那我们就来看下 ThreadLocal 究竟是如何使用的! ThreadLocal 简介 概念 ThreadLocal 类是用来提供线程内部的局部变量。这种变量在多线程环境下访问(get 和 set 方法访问)时能保证各个线程的变 ...
分类:
编程语言 时间:
2021-03-09 13:03:29
阅读次数:
0
创建线程的三种方式 1.继承Thread类 2.实现Runnable接口 3.实现Callable接口 继承Thread类 public Test extends Thread{ public void run(){ ... }//必须重写Thread类的Run方法 ... public stati ...
分类:
编程语言 时间:
2021-03-09 13:00:41
阅读次数:
0
1-js 是单线程还是多线程? 单线程,单位时间内只能处理一个进程 2-let 和 var 声明变量的区别? let变量有块级作用域 var变量是全局变量,没有块级作用域 3-说说 async/await 的使用方式和场景 当需要多个异步方法返回的结果时,使用await,多个异步方法能同时运行,在异 ...
分类:
其他好文 时间:
2021-03-08 14:04:28
阅读次数:
0
Java 1.Java的特性和优势 Write Once,Run Anywhere 简单性 面向对象 可移植性 高性能 分布式 动态性 多线程 安全性 健壮性 2.Java的三大版本 JavaSE:标准版(桌面程序,控制台开发……) JavaME:嵌入式开发(手机,小家电……) JavaEE:E企业 ...
分类:
编程语言 时间:
2021-03-08 13:19:58
阅读次数:
0
一、进程与线程的区别? 进程是所有线程的集合,每一个线程是进程中的一条执行路径,线程只是一条执行路径。 二、创建线程的三种方式: 继承Thread类创建线程类 实现Runnable接口 通过Callable和Future创建线程 三、创建线程池的四种方式:(参考1) newCachedThreadP ...
分类:
编程语言 时间:
2021-03-06 14:38:29
阅读次数:
0
阅读目录 一.GIL(全局解释器锁) GIL面试题如下 描述Python GIL的概念, 以及它对python多线程的影响?编写一个多线程抓取网页的程序,并阐明多线程抓取程序是否可比单线程性能有提升,并解释原因。 Guido的声明:http://www.artima.com/forums/flat. ...
分类:
编程语言 时间:
2021-03-06 14:14:42
阅读次数:
0
CountDownLatch、CyclicBarrier、Semaphore、Exchanger 的详细解析 本文主要介绍和对比我们常用的几种并发工具类,主要涉及 CountDownLatch 、 CyclicBarrier 、 Semaphore 、 Exchanger 相关的内容,如果对多线程相 ...
分类:
其他好文 时间:
2021-03-04 13:23:34
阅读次数:
0