跑一个小程序 run.py #! /usr/bin/python # encoding:utf-8 # 导入Tornado模块 import tornado.ioloop #核心IO循环模块 import tornado.httpserver #异步非阻塞HTTP服务器模块 import torna ...
分类:
编程语言 时间:
2020-07-08 15:38:00
阅读次数:
70
1、synchronized 是悲观锁,属于抢占式,会引起其他线程阻塞。 2、volatile 提供多线程共享变量可见性和禁止指令重排序优化。 3、CAS 是基于冲突检测的乐观锁(非阻塞) ...
分类:
其他好文 时间:
2020-07-07 19:28:08
阅读次数:
65
前言 我们都知道javascript是一门单线程、异步、非阻塞、解析类型脚本语言。 单线程 ?? 异步 ?? 非阻塞 ?? 然后还有 事件循环、消息队列,还有微任务、宏任务这些 这几天在掘金、知乎等论坛翻阅了不少大佬的文章,似乎了解到了一二,然后在这里把自己的体会总结出来,帮助大家快速理解,也能增加 ...
分类:
Web程序 时间:
2020-07-07 13:39:23
阅读次数:
75
I/O中的同步和异步的概念和线程中不太一样。 I/O写的时候,默认是写到页高速缓存就返回的,然后异步刷到磁盘上。而同步的I/O指的是改动写到磁盘上之后才会返回结果.可以通过fsync(),和fdatasync()将改动同步到磁盘。或者在open()的时候就指明同步的参数。 而阻塞和非阻塞指的是,在文 ...
分类:
其他好文 时间:
2020-07-05 23:01:18
阅读次数:
80
linux五种IO模型与事件驱动模型 前言 Linux下主要的IO主要分为:阻塞IO(Blocking IO),非阻塞IO(Non-blocking IO),同步IO(Sync IO)和异步IO(Async IO)。 同步:调用端会一直等待服务端响应,直到返回结果。 异步:调用端发起调用之后不会立刻 ...
分类:
系统相关 时间:
2020-07-05 17:15:08
阅读次数:
72
1. 直接内存 不是虚拟机运行时数据区的一部分,也不是《Java虚拟机规范》中定义的内存区域。 直接内存是Java堆外的、直接向系统申请的内存区间。 来源于NIO,通过存在堆中的DirectByteBuffer操作Native内存。 IO:阻塞式 NIO:非阻塞式 通常,访问直接内存的速度会优于Ja ...
分类:
其他好文 时间:
2020-07-02 19:51:14
阅读次数:
70
##Netty 原理 Netty 是一个高性能、异步事件驱动的 NIO 框架,基于 JAVA NIO 提供的 API 实现。它提供了对TCP、UDP 和文件传输的支持,作为一个异步 NIO 框架,Netty 的所有 IO 操作都是异步非阻塞的,通过 Future-Listener 机制,用户可以方便 ...
分类:
Web程序 时间:
2020-07-02 18:28:43
阅读次数:
63
网络编程(socket)概念 socket 与语言无关 什么是同步和异步? 什么是阻塞和非阻塞 BIO 编程 ? Blocking IO:同步阻塞编程方式 ? BIO 编程方式通常是在 JDK 1.4 版本之前常用的编程方式。编程的实现是:首先在服务端启动一个 ServerSocket 来监听 网络 ...
分类:
其他好文 时间:
2020-07-01 19:57:42
阅读次数:
55
Java中的IO,BIO,NIO,AIO详解 IO BIO,NIO和AIO的关系 BIO:java.io包.基于流模型实现,使用同步,阻塞方式.即:读输入流或写输出流时,在读或写动作完成之前,读(写)线程一直阻塞.性能差. NIO:java.nio包.可以构建多路复用,同步非阻塞的IO操作. AIO ...
分类:
其他好文 时间:
2020-07-01 09:52:16
阅读次数:
55
Netty 是一个高性能、异步事件驱动的 NIO 框架,基于 JAVA NIO 提供的 API 实现。它提供了对TCP、UDP 和文件传输的支持,作为一个异步 NIO 框架,Netty 的所有 IO 操作都是异步非阻塞的,通过 Future-Listener 机制,用户可以方便的主动获取或者通过通知 ...
分类:
Web程序 时间:
2020-06-29 19:57:52
阅读次数:
56