初识asyncio协程 一、基本概念 ? 要想了解学习协程相关知识要先对以下几个概念先行了解: 阻塞 ? 阻塞状态是指程序未得到某所需计算资源时的挂起状态,简单说就是程序在等待某个操作未执行完前无法执行其他操作。 非阻塞 ? 非阻塞状态是指在等待某项操作执行完前可以继续运行其他操作,也就是不会被阻塞 ...
分类:
其他好文 时间:
2019-09-20 12:39:00
阅读次数:
99
1.轻量级锁(Lock)与重量级锁(synchronized):都是可重入锁 2.可重入锁(递归锁):方法中嵌套方法,锁可传递 3.读写锁(ReentrantReadWriteLock)--读写分离 读锁(获取该值信息)和写锁(对该值操作) 4.乐观锁 本质没有锁,效率比较高、无阻塞、无等待、重试。 ...
分类:
其他好文 时间:
2019-09-15 14:14:55
阅读次数:
130
java中锁主要分为两类: 1、 synchronized 关键字修饰的锁 2、 在同步容器JUC中 ReentrantLock(可重入性) 关键字修饰的锁 ReenTrantLock 和 synchronized 的区别: 1、可重入性 ,两者都是一样的,当有线程进入锁,计数器就加1,当计数器为0 ...
分类:
其他好文 时间:
2019-09-13 17:44:56
阅读次数:
222
常用多线程方法 可重入锁 ? ReentrantLock类、synchronized关键字,属于悲观锁。 ? 可重入锁,即递归锁。指在同一线程内,外层函数获得锁之后,内层递归函数仍然可以获得该锁。 ? 作用:防止在同一线程中多次获取锁而导致死锁发生。 自旋锁 ? java.util.concurre ...
分类:
编程语言 时间:
2019-09-09 21:09:47
阅读次数:
131
线程安全 可重入/不可重入:针对函数,多个执行流中是否可以同时进入函数运行而不出现问题 概念:指多个线程同时处理操作临界资源而不会出现数据二义性,则称是线程安全的 二义性:在线程中是否对临界资源进行了非原子操作 如何实现线程安全: 同步(保证合理):临界资源的合理访问(时序可控) 互斥(保证安全): ...
分类:
编程语言 时间:
2019-09-02 09:29:48
阅读次数:
112
简介: ReentrantLock作为一个可重入互斥锁,具有与Synchronized隐式监视器相同的功能,除此之外,还有更强的扩展性。 如果一个线程调用lock(),如果该锁未被另外一个线程持有,则成功获取锁并返回;如果当前线程已经持有该锁,则直接返回。可以通过isHeldByCurrentThr ...
分类:
编程语言 时间:
2019-08-28 00:47:25
阅读次数:
95
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # asyncio爬虫、去重、入库 4 5 import asyncio 6 import re 7 8 import aiohttp 9 import aiomysql 10 from pyque... ...
分类:
其他好文 时间:
2019-08-24 18:44:06
阅读次数:
79
锁的简单应用 用lock来保证原子性(this.count++这段代码称为临界区) 什么是原子性,就是不可分,从头执行到尾,不能被其他线程同时执行。 可通过CAS来实现原子操作 CAS(Compare and Swap): CAS操作需要输入两个数值,一个旧值(期望操作前的值)和一个新值,在操作期间 ...
分类:
其他好文 时间:
2019-08-19 11:13:03
阅读次数:
105
可重入锁:锁可以连续使用计数器+判断进入的线程是不是已经锁定的线程,如果是那就不用等待,直接使用publicclassmy{publicstaticvoidmain(String[]args){mym=newmy();m.test();}publicvoidtest(){synchronized(this)//第一次获得锁{while(true){synchronized(this)//第二次获得
分类:
编程语言 时间:
2019-08-19 09:41:37
阅读次数:
86
├Jquery表单验证实现过程.avi├第1集 JS Jquery学习大纲、Jquery解决冲突方法以及JS加载时机.avi├第2集 JS Jquery核心对象函数.avi├第3集 JS Jquery选择器函数.avi├第4集 JS Jquery过滤函数详解.avi├第5集 JS Jquery查找和 ...
分类:
Web程序 时间:
2019-08-14 23:44:49
阅读次数:
125