ICode9

精准搜索请尝试: 精确搜索
  • 并发编程----同步,异步,阻塞,非阻塞,异步加回调机制,线程队列,event事件2019-12-04 17:56:03

    1. 同步,异步,阻塞,非阻塞, 站在任务发布的角度: 同步:任务发出去之后,等待结果,直到这个任务最终结束后,返回结果,再发步下一个任务. 异步:所有任务同时发出,不会在原地等待结果返回 程序运行中表现得状态:阻塞.运行,就绪 阻塞:程序遇到IO阻塞,程序遇到IO立马会停止(挂起),cp

  • 【网络知识之七】QUIC(http3)2019-12-04 16:51:29

    QUIC(Quick UDP Internet Connection)是谷歌制定的一种基于UDP的低时延的互联网传输层协议。 1、避免前序包阻塞HTTP2的最大特性就是多路复用,而HTTP2最大的问题就是队头阻塞。首先了解下为什么会出现队头阻塞。比如HTTP2在一个TCP连接上同时发送3个Stream,其中第2个Stream丢了一个P

  • 深入理解多线程和线程池?2019-12-03 20:57:18

    1、什么是线程? 在理解线程前,要先理解什么是进程; 【1】那么,什么是进程呢? 进程是指运行中的应用程序,每个进程都有自己独立的地址空间(内存空间),比如用户点击桌面的IE浏览器,就启动了一个进程,操作系统就会为该进程分配独立的地址空间。当用户再次点击左面的IE浏览器,又启动了一个进程,

  • STP生成树协议2019-11-29 16:53:07

    一、技术由来 在冗余网络的结构上,通过选择根网桥,根端口,指定端口,阻塞端口解决冗余网络带来的问题 冗余网络带来的问题: 1、MAC地址表不稳定 2、多帧复制 3、广播风暴   二、概念 1、根桥 1个网络有一个根桥   协商根桥: 第一步: 根据交换机的优先级,优先级越高,越成为根桥 第二步: 如果

  • 【bug-004】【tcp】网络断开重连后,客户端recv函数一直阻塞,不会返回2019-11-26 23:55:06

    【前提】客户端采用tcp阻塞模式【现象】与相机设备建立连接后,偶尔出现几次突然就收不到相机发过来的数据;几经排查,怀疑跟网络波动有关,于是通过插拔网线来模拟网络波动,果然bug复现。 【原因】(个人理解)每一个节点(包括服务器、客户端、中间节点)都应该会用一个五元组(源IP、源端口、目的I

  • python 进程2019-11-26 10:03:16

    理论   什么是进程 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其

  • 关于外部样式表也许你不知道的事2019-11-26 09:03:17

    singsong: 文章中 demo 猛戳这里吧 ✏️最新内容请以github上的为准❗️ 在讲解之前,先看一个问题。如下图所示,外部样式表是否会阻塞 HTML 解析(先不要看答案,可以自己思考和实验一下): 通过DevTools->network: 如上图所示,indexcss.css 并没有阻塞 HTML 解析,因为 DOMContentLoaded 时间

  • 非阻塞式网络编程2019-11-22 10:04:40

    选择器:NIO是非阻塞模式的,而非阻塞的实现的核心就是选择器。选择器(Selector) 是 SelectableChannle 对象的多路复用器, Selector 可以同时监控多个 SelectableChannel 的 IO 状况,也就是说,利用 Selector可使一个单独的线程管理多个 Channel。 在使用非阻塞式的时候需要一定要开启非阻

  • 优化浏览器渲染2019-11-17 10:53:02

    优化浏览器渲染,要从关键渲染路径出发,基本上是优化HTML、CSS、JS的依赖关系。 其中HTML构建的DOM消耗是必须的。 1. 从阻塞渲染的CSS出发 CSS默认是阻塞渲染的资源。 根据浏览器渲染的过程可知,浏览器渲染的基础是DOM和CSSOM。在生成CSSOM之前,不会渲染任何内容。 生成CSSOM的过程是

  • 线程阻塞工具:LockSupport2019-11-16 23:01:40

    1 LockSupport 类使用类似信号量的机制,它为每一个线程准备了一个许可,如果许可可用,那么park()方法会立即返回,并且消费这个许可,如果许可不可用,就会阻塞, 而unpark()方法则使得一个许可变为可用。   这一个特点使得:即使unpark(0方法操作发生在park()方法之前,它也可以使下一次的park

  • Java线程--LockSupport使用2019-11-16 15:03:40

    原创:转载需注明原创地址 https://www.cnblogs.com/fanerwei222/p/11871805.html Java线程--LockSupport使用 public static void main(String[] args) { /** * 阻塞当前线程 , 暂停调度, 响应中断 * 获取锁失败也一直阻塞, 直到拿到锁 */ LockSupport.p

  • 同步异步阻塞非阻塞2019-11-13 18:52:31

    同步异步阻塞非阻塞 一、状态介绍 在了解其他概念之前,我们首先要了解进程的几个状态。在程序运行的过程中,由于被操作系统的调度算法控制,程序会进入几个状态:就绪,运行和阻塞。 就绪(Ready)状态:当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称

  • 分布式系统笔记2019-11-12 22:59:35

    1.1.1什么是分布式系统《分布式系统原理与范型》一书中是这样定义分布式系统的:“分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统”。这里面包含了2个含义:硬件独立;软件统一。 1.2.1什么是线程线程是程序执行流的最小单位。一个标准的线程由线程ID、当前

  • 线程与进程2019-11-12 16:04:27

    进程:进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进

  • nodejs学习2019-11-10 18:55:33

    nodejs学习 nodejs非阻塞io原理 非阻塞io操作流程 主要是有个线程池实现异步操作,最后返回结果再由loop进行接收 ,loop单线程接收任务是单线程。 `什么是异步非阻塞` 排队:在排队的时候,你除了等之外什么都干不了 叫号机:你要做的是先取号码,等轮到你的时候,系统会通知你,这中间,你

  • 队头阻塞2019-11-09 10:00:10

    队头阻塞 请求 - 应答 模式加剧了 HTTP 的性能问题,这就是著名的“队头阻塞”(Head-of-line blocking)。 当顺序发送的请求序列中的一个请求因为某种原因被阻塞时,在后面排队的所有请求也一并被阻塞,会导致客户端迟迟收不到数据。 HTTP/1.1不能完全解决,但可以缓解: 方法1:并发连接,同时对一

  • HTTP的无状态2019-11-08 22:55:07

    HTTP是无状态的。好处:因为服务器没有“记忆能力”,所以就不需要额外的资源来记录状态信息,不仅实现上会简单一些,而且还能减轻服务器的负担,能够把更多的 CPU 和内存用来对外提供服务。而且,“无状态”也表示服务器都是相同的,没有“状态”的差异,所以可以很容易地组成集群,让负载均衡把请

  • Java阻塞队列2019-11-08 21:00:34

    一、阻塞队列:用于保存等待执行的任务。在阻塞队列中,线程阻塞的两种情况:   1.当队列中没有数据的情况下,消费者端的所有线程都会被自动阻塞(挂起),直到有数据放入队列。      2.当队列中填满数据的情况下, 生产者端的所有线程都会被自动阻塞,知道队列中有空位置,线程被自动唤醒。  

  • Mysql 查询阻塞和事物情况2019-11-07 09:01:53

    MYSQL 服务器逻辑架构图 连接/线程处理 == 》 (解析器 –> 查询缓存) ===》 优化器 ===》 存储引擎 服务器级别锁MYSQL 使用的锁类型:表锁(显式:LOCK TABLE,隐式)全局锁(read_only=1,FLUSH TABLE WITH READ LOCK)命名锁 :服务器重命名或者删除一个表时创建。重命名可能会影响到触发器相关的

  • 【面试】迄今为止把同步/异步/阻塞/非阻塞/BIO/NIO/AIO讲的这么清楚的好文章(快快珍藏)2019-11-04 12:03:37

    网上有很多讲同步/异步/阻塞/非阻塞/BIO/NIO/AIO的文章,但是都没有达到我的心里预期,于是自己写一篇出来。     常规的误区假设有一个展示用户详情的需求,分两步,先调用一个HTTP接口拿到详情数据,然后使用适合的视图展示详情数据。如果网速很慢,代码发起一个HTTP请求后,就卡住不动了,直

  • Java核心(一)深入理解BIO、NIO、AIO2019-11-03 12:53:26

      目标:    BIO、NIO、AIO 的区别是什么? 同/异步、阻/非阻塞的区别是什么? 文件读写最优雅的实现方式是什么? NIO 如何实现多路复用功能?   一,IO的介绍:       (1)IO的全称其实是:Input/Output的缩写。        (2)我们通常所说的 BIO 是相对于 NIO 来说的,BIO 也就是 Java 开

  • 基于NIO写的阻塞式和非阻塞式的客户端服务端2019-11-01 19:00:39

    由于功能太过简单,就不过多阐述了,直接上阻塞式代码: package com.lql.nio;import org.junit.Test;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.FileChannel;import java.nio.channels.ServerSocketChannel

  • IO操作2019-10-26 12:06:25

    文章目录IO简介IO分类阻塞IO非阻塞IOIO多路复用select位运算poll IO简介 IO input output 在内存中存在数据交换的操作都可以认为是IO操作 和终端交互 : input print 和磁盘交互 : read write 和网络交互 : recv send IO密集型程序 : 在程序执行过程中存在大量IO操

  • JAVA - IO - IO的类型(AIO, BIO, NIO)2019-10-23 11:03:09

    IO的方式通常分为几种,同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO。 一、BIO      在JDK1.4出来之前,我们建立网络连接的时候采用BIO模式,需要先在服务端启动一个ServerSocket,然后在客户端启动Socket来对服务端进行通信,默认情况下服务端需要对每个请求建立一堆线程等待请

  • 非阻塞IO模型解决阻塞IO(socket例子)2019-10-22 12:56:59

    #方法:sk.setblocking(False)#服务器端:import socketsk=socket.socket()sk.setblocking(False)sk.bind(('127.0.0.1',8080))sk.listen()#定义空列表用于存放各个connConn_List = []#定义删除列表用于删除Conn_List中断开连接的客户端connConn_Del = []while 1: try: con

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有