ICode9

精准搜索请尝试: 精确搜索
  • python中的进程、线程、协程2022-09-09 21:32:28

    大家好,有时候会听到有人评价python编程执行效率方面相对java没有啥优势,其实是没有找到正确的打开方式,编程中无论是api还是执行脚本,无论是I/O密集型任务还是计算密集型任务,都有其提升执行效率的方式,通常,我们的优化手段就是并发编程,实现多任务同时执行,改善系统性能。python中实现并

  • 学习:python进阶 协程2022-09-09 15:01:19

           实例2  使用asyncio 实现协程 【官方推荐】      

  • 【一个经典BUG】gin框架中,异步协程使用context导致取不到数据2022-09-07 15:31:57

    bug的内容大致如下: func httpHandle(c *gin.Context) { go func(ctx Context){ v := ctx.Value("xxx") // 这里取不到值,导致后续发生panic }(c) } 1.发生panic是随机的; 2.问题的原因是:当协程开始使用context的时候,父级协程技术,gin框架回收了context。 context失

  • Go 语言入门 1-管道的特性及实现原理2022-09-01 15:03:23

    入坑 go 也快一年了,从今天开始会定期分享一下 Go 语言学习过程中的一些基础知识。   go 语言中的管道, 主要是用于协程之间的通信, 比 UNIX 的管道更加轻量和易用。   我们先看一下管道的数据结构:   type hchan struct {  gcount   uint  // 环形队列剩余元素个数  dat

  • 大道如青天,协程来通信,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang通道channel的使用EP142022-08-30 19:01:53

    众所周知,Go lang的作用域相对严格,数据之间的通信往往要依靠参数的传递,但如果想在多个协程任务中间做数据通信,就需要通道(channel)的参与,我们可以把数据封装成一个对象,然后把这个对象的指针传入某个通道变量中,另外一个协程从这个通道中读出变量的指针,并处理其指向的内存对象。 通道的

  • 协程再Android中的使用2022-08-29 22:01:26

    目录 协程的相关概念 协程的上下文 Job Dispatchers CoroutineName 协程的作用域 协程的管理 协程的启动 父子协程的概念 Android特有的作用域的使用和区别 异常管理 协程的常见使用和封装 协程的相关概念 协程是并发式的设计模式,简化异步执行。 suspend 修饰符协程的关

  • 进程、线程补充与协程相关介绍2022-08-28 14:02:08

    补充点 1.死锁 当你知道锁的使用抢锁必须要释放锁,其实你在操作锁的时候也极其容易产生死锁现象(整个程序卡死 阻塞) from threading import Thread, Lock import time mutexA = Lock() mutexB = Lock() # 类只要加括号多次 产生的肯定是不同的对象 # 如果你想要实现多次加括号等

  • 【并发操作】协程,线程,进程是什么,在Python中怎么应用?2022-08-22 20:01:55

    前言 生活中的多任务时时刻刻存在,例如小张一边码字一边看屏幕,又例如小蔡可以一边跳舞一边打篮球,这就是生活中的多任务。那么计算机中的多任务是什么呢、怎么使用呢?就让我们一起探讨计算机中,多任务-线程、多任务-进程、多任务-协程的理解以及在Python中的应用。 多任务 多任务处理

  • 3.Task对象2022-08-21 22:01:08

    Task对象 用于调度或并发协程对象 在事件循环中可以添加多个任务   创建task对象三种方式 创建task对象可以让协程加入事件循环中等待被调度执行 3.7版本之后加入asyncio.create_task方式 在之前的版本可以使用低层级的asyncio.ensure_future 不建议手动实例化Task对象 asyncio.

  • go基础系列~并发协程2022-08-21 10:03:30

    零 基础协程 一种比线程更加轻量级的存在。正如一个进程可以拥有多个线程一样,一个线程也可以拥有多个协程,协程的切换和创建完全是用户决定的goroutine相对于线程:1.Goroutine所需要的内存通常只有2kb,而线程则需要1Mb,内存消耗更少2.由于线程创建时需要向操作系统申请资源,并且在销

  • Unity-进程/线程/协程2022-08-17 13:30:19

    进程 进程是计算机中的程序关于某数据集合上的一次运动活动,是系统进行资源分配和调度的基本单元,是操作系统结构的基础。 // 打开指定程序 Process p = Process.Start(@"C:\Program Files\Google\Chrome\Application\chrome.exe"); // 杀死携程 p.Kill(); // 获得当前运行的全部进

  • go基础 - WaitGroup用法2022-08-16 00:32:52

    go基础 - WaitGroup用法 package main import ( "fmt" "sync" "time" ) /** * Created by Goland * User: wkk alisleepy@hotmail.com * Time: 2022/8/15 - 23:33 * Desc: <描述信息> */ func main() { fmt.Println("主线程 start。

  • 五、协程实现2022-08-14 12:03:34

    解决阻塞问题: import asyncio async def request(url): print("正在请求的url",url) print('请求成功') return url #async修饰的函数,调用之后返回一个协程对象 c = request("www.baidu.com") #===========1方法============== #创建一个事件循环对象 loop = asynci

  • 【并发编程】第3回 线程与协程2022-08-11 20:32:37

    目录1. 验证GIL的存在1.1 验证GIL是否存在1.2 针对不同的数据应该加不同的锁处理2. 验证python多线程是否有用2.1 单个CPU IO密集型(代码有IO操作)2.2 单个CPU 计算机密集(代码没用IO)2.3 多个CPU IO密集型(代码有IO操作)2.4 多个CPU 计算机密集(代码没有IO)2.5 代码案例3. 死锁现象3.1 定

  • python进程、线程、协程2022-08-08 15:06:35

    python 线程与进程简介   进程与线程的历史 我们都知道计算机是由硬件和软件组成的。硬件中的CPU是计算机的核心,它承担计算机的所有任务。 操作系统是运行在硬件之上的软件,是计算机的管理者,它负责资源的管理和分配、任务的调度。 程序是运行在系统上的具有某种功能的软件,比如

  • asyncio2022-08-07 12:36:42

    1.协程 想学asyncio,得先了解协程,协程是根本呀! 协程(Coroutine),也可以被称为微线程,是一种用户态内的上下文切换技术。简而言之,其实就是通过一个线程实现代码块相互切换执行。例如: def func1(): print(1) ... print(2) def func2(): print(3) ... print(4)

  • 协程-gevent2022-08-05 15:33:44

    gevent greenlet已经实现了协程,但是这个还的人工切换,是不是觉得太麻烦了,不要捉急,python还有一个比greenlet更强大的并且能够自动切换任务的模块gevent 其原理是当一个greenlet遇到IO(指的是input output 输入输出,比如网络、文件操作等)操作时,比如访问网络,就自动切换到其他的greenl

  • 并发拓展--框架并发底层原理(很重要!)2022-08-04 13:34:44

    框架底层并发原理 # 1.django和flask项目的并发量 取决于使用的wsgi框架 (根据前端的请求,开设线程去执行视图函数) 故:项目部署 采用 uwsgi 且 动静分离, 增加项目的并发量 # 2.django和flask都是同步框架 来一个请求,wsgi框架就开启一个线程,执行视图函数

  • python 协程并发测试2022-08-01 18:36:05

    这篇文章永久挂在首页,就是为了对一些人说Python慢的人啪啪打脸。 总有人说python慢,至于为什么慢就是说不上来,今天就是测试一下python语言的速度 在网络爬虫中,影响速度的有数据下载,数据解析,数据存储,最主要的影响是数据下载和数据存储,数据下载影响是网络IO,数据存储是磁盘IO,本次模拟

  • Go 通道(channel)2022-07-26 22:36:49

    通道(channel),就像一个可以用于发送类型化数据的管道,由其负责协程之间的通信,从而避开所有由共享内存导致的陷阱;这种通过通道进行通信的方式保证了同步性。数据在通道中进行传递:在任何给定时间,一个数据被设计为只有一个协程可以对其访问,所以不会发生数据竞争。 创建通道 ch1 := mak

  • Python异步编程之Asyncio2022-07-26 14:32:59

    1. 协程简介 1.1 协程的含义及实现方法 协程(Coroutine),也可以被称为微线程,是一种用户态内的上下文切换技术。简而言之,其实就是通过一个线程实现代码块相互切换执行。例如: def func1(): print(1) ... # 协程介入 print(2) def func2(): print(3) ...

  • java java19 协程 虚拟线程 virtual threads 尝鲜2022-07-25 02:01:08

    jdk下载 java19 九月份就GA了,大家快试试协程吧。。 jdk19我放在群文件了 Q群 4915800 自行下载也可以 https://openjdk.org/projects/jdk/19/ 协程代码 import java.time.Duration; import java.util.concurrent.Executors; import java.util.stream.IntStream; public class Tes

  • 【Unity学习过程踩坑记录】敌人攻击之后Unity发生卡死2022-07-22 01:03:30

    问题描述: 之前先是实现了敌人的自动追击功能,然后在实现敌人的攻击效果之后,Unity发生了卡死,只能通过任务管理器强制关闭。   解决: 经过代码对比发现,问题出在:在敌人自动追击的IEnumerator协程里,错误地将yield语句放在并不会执行到的if语句里,导致yield语句无法执行。这可能是Unity卡

  • 记一次openresty协程返回结果错乱排查2022-07-20 22:34:48

    记一次openresty协程返回结果错乱排查 现场 在我普通的日常开发中,我写了一段普通查redis的代码,上线以后马上有报错,nginx errorlog如下 ERROR : "xxx/redis.lua:175: bad argument #1 to 'byte' (string expected, got boolean)" "POST xxx HTTP/1.1" 然后马上看了下产生报错的代

  • 异步http框架-httpx,实现异步协程请求url2022-07-20 18:32:51

    """ 协程介绍: 什么是协程? 简单来说,协程是一种基于线程之上,但又比线程更加轻量级的存在。对于系统内核来说,协程具有不可见的特性,所以这种由 程序员自己写程序来管理 的轻量级线程又常被称作 "用户空间线程"。 协程比多线程好在哪呢? 1. 线程的控制权在操

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

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

ICode9版权所有