ICode9

精准搜索请尝试: 精确搜索
  • 线程的生命周期2022-01-23 20:59:42

    线程的生命周期分为5个阶段,分别为:新建、就绪、运行、阻塞、死亡。 线程生命周期图如下: 1、新建状态 当程序通过new关键字创建出来的线程,该线程就处于新建状态。 2、就绪状态 当线程调用start()方法以后,该线程就处于就绪状态。但这并不代表该线程就可以执行了,而是需要去争夺

  • nobuffer与av_read_frame的关系2022-01-22 17:33:13

    AVDictionary *options = NULL; av_dict_set(&options, “fflags”, “nobuffer”, 0); int re = avformat_open_input(&ic, URL, NULL, &options); av_read_frame在读取视频后,开始解码在最开始几帧avcodec_receive_frame并不会得到解码后的数据,这个函数返回值是AVERROR(EAGA

  • JUC------阻塞队列2022-01-22 16:32:54

    文章预览 前言一、阻塞队列类型1.1、ArrayBlockingQueue1.2、LinkedBlockingQueue1.3、PriorityBlockingQueue1.4、SynchronousQueue1.5、DelayQueue1.6、LinkedBlockingDeque1.7、LinkedTransferQueue 二、ArrayBlockingQueue常用方法三、LinkedBlockingQueue 常用方法

  • Spring WebFlux框架概述2022-01-22 09:32:28

    Spring WebFlux框架概述 什么是 Spring WebFlux WebFlux 是Spring5添加的新模块,是一个使用响应式编程和异步非阻塞的Web开发框架,它的功能和 Spring MVC 类似。 WebFlux 以 Reactor 库为基础, 基于异步和事件驱动,可以让在有限的硬件资源里面,提升系统的吞吐量和伸缩性。 Spr

  • 高性能异步爬虫(一)2022-01-21 10:35:37

    高性能异步爬虫   目的:在爬虫中使用异步实现高性能的数据爬取操作 单线程下以串行方式模拟发送请求,程序运行时间:   不难发现,程序中的get_content是一个阻塞的方法,当且仅当,当前URL响应成功后,才能对下一个URL发起请求,因此造成了较长的运行时间。 异步爬虫的方式:   1、多线程,

  • java 并发容器2022-01-19 22:33:07

    1.什么是同步容器   Java的集合容器框架中,主要有四大类别:List、Set、Queue、Map,大家熟知的这些集合类ArrayList、LinkedList、HashMap这些容器都是非线程安全的   如果有多个线程并发地访问这些容器时,就会出现问题。因此,在编写程序时,在多线程环境下必须要求程序员手动地在任何

  • NodeJS简介-node.js是什么?2022-01-19 15:00:42

    Nodejs是个在服务器动可以解析和执行JavaScript代码的运行环境,也可以说是一个运行时平台,仍然使用JavaScript作为开发语言,但是提偶了一些功能性的API,例如文件操作和网络通信API等。 Nodejs是由 Ryan Dahl 于2009年5月推出的最初版本,Ryan Dahl 是一名专注于实观高性晚Web服务器

  • 一次线上线程池任务事故2022-01-19 12:31:30

    前言 线上出现线程池提交任务抛出 RejectedExecutionException 异常 即任务提交执行了拒绝策略的操作。查看业务情况和线程池配置,发现并行执行的任务数是小于线程池最大线程数的。以下是排查过程 一、业务场景 1.1. 任务描述 每次执行一组任务,一组任务最多有 15 个,多线程执行

  • 五种IO模型(Model)2022-01-18 23:04:05

    目录一:IO模型简介1.五种IO Model:二:五种IO模型简介1.阻塞IO2.非阻塞IO3.多路复用IO4.信号驱动IO模型5.异步IO三:5种I/O模型的比较 一:IO模型简介 IO模型研究的主要是网络IO(linux系统) 同步(synchronous) 大部分情况下会采用缩写的形式 sync 异步(asynchronous) async 阻塞(blo

  • Linux阻塞与非阻塞IO访问与异步信号2022-01-15 13:58:16

    一、基本概念介绍         这里的 IO 指的是Input/Output,也就是输入和输出,可以理解为应用程序对驱动设备的读写操作。阻塞IO是指:当应用程序对设备驱动进行操作的时候,如果不能获取到设备资源,应用程序会被系统挂起,系统会先去执行其他进程,直到设备资源可以获取为止。非阻塞IO

  • 并发编程2022-01-14 20:34:21

    并发编程理论 并行 并行是指“并排行走”或“同时实行或实施”。在操作系统中,若干个程序段同时在系统中运行,这些程序的执行在时间上是重叠的,一个程序段的执行尚未结束,另一个程序段的执行已经开始,无论从微观还是宏观,程序都是同时执行的; 问:单核CPU能否实现并行? 答:不能,但是可以实

  • 阻塞队列2022-01-14 18:32:47

    FIFO BlockingQueue ArrayBlockingQueue LinkedBlockingQueue SynchronousQueue 什么时候使用阻塞队列 多线程并发处理,A调用B,如果B未执行完,A需要等待 多线程,线程池 使用队列 四组API 抛出异常 不会抛出异常 阻塞等待 超时等待 方式 抛出异常 不会抛出异常有

  • 阻塞队列示例2022-01-14 13:31:15

    试图从空的阻寨队列中获取元素的线程将会被阻寨,直到其他的线程往空的队列插入新的元素。同样 ·  试图往已满的阻寨队列中添加新元素的线程同样也会被阻寨,直到其他的线程从列中移除一个或者多个元素或者完全清空队列后使队列重新变得空闲起来并后续新增   抛出异常: add,rem

  • IO和NIO的本质与区别2022-01-14 11:02:05

    1、IO的本质   要了解IO和NIO,我们先从计算机原理上来看一下IO是什么?     IO本质上就是对内存的操作,将数据流写入内存就是Input,从内存写出数据流就是Output。     IO有五种模型:阻塞IO、非阻塞IO、IO多路复用、信号驱动IO、异步IO。   我们来看下Java应用程序在系统中

  • Oracle定位对阻塞的对象或锁信息2022-01-13 17:02:20

    set serveroutput on size unlimited set feedback off DECLARE v_num_sessions INTEGER := 0; CURSOR cv IS SELECT dba_objects.object_name, locks_t.row#, locks_t.blocked_secs, locks_t.blocker_text, locks_t.blocked_text,

  • Oracle:锁处理2022-01-13 09:31:29

    一:解决方案 --查询锁 select t.SID, t.SERIAL#, t2.OBJECT_TYPE, t.USERNAME ORACLE_USER, t2.OBJECT_NAME, t.OSUSER, t.MACHINE, t3.SQL_TEXT from v$session t, v$locked_object t1, dba_objects t2, v$sql t3 w

  • JUC之阻塞队列(BlockingQueue)基础2022-01-13 09:31:09

    阻塞队列 阻塞队列(BlockingQueue)是一个支持两个附加操作的队列。这两个附加的操作支持阻塞的插入和移除方法。 阻塞队列常用于生产者和消费者的场景: 当队列为空的,从队列中获取元素的操作将会阻塞; 当队列为满的,从队列中添加元素的操作将会阻塞; 所谓的阻塞:在某些情况下会挂起线程

  • NIO - 非阻塞式IO2022-01-12 21:37:00

    NIO, No blocking IO, 非阻塞式IO。指的是在发生IO操作时不会产生阻塞,利用NIO可以处理高并发和高访问的场景。和之相对的是BIO, Blocking IO,这是标准的阻塞IO。 BIO 一个经典的BIO的例子是一个最简单的C/S模型程序。以下为代码: public class BIODemoServer { public static

  • 2022年Java面试宝典- IO篇2022-01-11 19:34:04

    很多同学想知道企业在招聘Java工程师时会提问哪些问题,汇总历届学员求职经验并与企业沟通之后总结出《Java面试宝典》,涵盖Java基础、设计模式以及Java框架等考察点,一码当先,学员月薪过万不是梦! /1.IO 里面的常见类,字节流、字符流、接口、实现类、方法阻塞? 输入流就是从外部文件输

  • MySQL 中如何定位 DDL 被阻塞的问题2022-01-11 14:04:56

    经常碰到开发、测试童鞋会问,线下开发、测试环境,执行了一个DDL,发现很久都没有执行完,是不是被阻塞了?要怎么解决? 包括在群里,也经常会碰到类似问题:DDL 被阻塞了,如何找到阻塞它的 SQL ? 实际上,如何解决 DDL 被阻塞的问题,是 MySQL 中一个共性且高频的问题。 下面,就这个问题,给一个清晰明了

  • 常用线程安全的队列2022-01-10 09:01:25

    概述 参考https://www.cnblogs.com/DreamRecorder/p/9223016.html 线程安全队列可以分为,阻塞线程安全队列和非阻塞线程安全队列 阻塞线程安全队列常用为ArrayBlockingQueue、LinkedBlockingQueue 非阻塞线程安全队列一般为ConcurrentLinkedQueue transient关键字 将不需要序列化的

  • 聊聊同步、异步、阻塞、非阻塞以及IO模型2022-01-10 08:31:25

    前言 在使用Netty改造手写RPC框架的时候,需要给大家介绍一些相关的知识,这样很多东西大家就可以看明白了,手写RPC是一个支线任务,后续重点仍然是Kubernetes相关内容。 阻塞与非阻塞 同步与异步 阻塞与非阻塞 阻塞和非阻塞是进程在访问数据的时候,数据是否准备就绪的一种处理方式。当数

  • 同步阻塞、同步非阻塞和异步阻塞、异步非阻塞之间的区别2022-01-09 21:31:18

    同步与异步 1.同步和异步关注的是消息通信机制,所谓同步,就是在发出一个调用时,在没有得到结果之前,该调用就不返回。但是一旦调用返回,就得到返回值了。换句话说,就是由调用者主动等待这个调用的结果。比如netty框架中ChannelFuture的sync()方法就是客户端同步等待客户端与服务器端建

  • mysql锁和分区2022-01-09 16:33:00

    mysql 锁: myISAM 在执行查询语句前,会自动涉及的所有表加读锁, 在执行增删改操作前,会自动 给涉及的表加写锁 1.对myISAM 表的读操作(加读锁),不会阻塞其他进程对同一表的读请求,但会阻塞对同一表的 写请求。只有读锁释放后,才会执行其他进行的写操作 2. 对myISAM

  • 怎样理解阻塞非阻塞与同步异步的区别?2022-01-06 13:34:51

    同步阻塞:你打电话告诉老板你要买某书,老板拿起电话听你说完就去查书,没有说话,你什么也不知道,在得到任何结果之前,你一直拿着电话干等,你此时什么也干不了。30分钟后老板直接把书送到你家,这时你才挂断电话。每次电话你都要得得到结果(书到家)后你才挂断电话,这是同步。你一直拿着电话

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

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

ICode9版权所有