您好,欢迎光临本网站![请登录][注册会员]  

搜索资源列表

  1. Linux IO的水平触发和边缘触发的区别

  2. Linux IO的水平触发和边缘触发的区别     在linux的IO多路复用中有水平触发,边缘触发两种模式,这两种模式的区别如下:      水平触发:如果文件描述符已经就绪可以非阻塞的执行IO操作了,此时会触发通知.允许在任意时刻重复检测IO的状态.select,poll就属于水平触发.      边缘触发:如果文件描述符自上次状态改变后有新的IO活动到来,此时会触发通知.在收到一个IO事件通知后要尽可能多的执行IO操作,因为如果在一次通知中没有执行完IO那么就需要等到下一次新的IO活动
  3. 所属分类:其它

    • 发布日期:2021-01-20
    • 文件大小:50176
    • 提供者:weixin_38736018
  1. Linux设备驱动中的阻塞和非阻塞I/O

  2. 写的是Linux设备驱动中的阻塞和非阻塞I/0,何谓阻塞与非阻塞I/O?简单来说是对I/O操作的两种不同的方式,驱动程序可以灵活的支持用户空间对设备的这两种访问方式。   一、基本概念:   阻塞操作:是指在执行设备操作时,若不能获得资源,则挂起进程直到满足操作条件后再进行操作。被挂起的进程进入休眠, 被从调度器移走,直到条件满足。   非阻塞操作:在不能进行设备操作时,并不挂起,它或者放弃,或者不停地查询,直到可以进行操作。非阻塞应用程序通常使用select系统调用查询是否可以对设备进行
  3. 所属分类:其它

    • 发布日期:2021-01-20
    • 文件大小:56320
    • 提供者:weixin_38631225
  1. 深入理解python中的select模块

  2. 简介 Python中的select模块专注于I/O多路复用,提供了select  poll  epoll三个方法(其中后两个在Linux中可用,windows仅支持select),另外也提供了kqueue方法(freeBSD系统) select方法 进程指定内核监听哪些文件描述符(最多监听1024个fd)的哪些事件,当没有文件描述符事件发生时,进程被阻塞;当一个或者多个文件描述符事件发生时,进程被唤醒。 当我们调用select()时:   1、上下文切换转换为内核态   2、将fd从用户空间复制
  3. 所属分类:其它

    • 发布日期:2021-01-20
    • 文件大小:84992
    • 提供者:weixin_38744557
  1. Django中对通过测试的用户进行限制访问的方法

  2. 限制访问可以基于某种权限,某些检查或者为login视图提供不同的位置,这些实现方式大致相同。 一般的方法是直接在视图的 request.user 上运行检查。 例如,下面视图确认用户登录并是否有 polls.can_vote权限: def vote(request): if request.user.is_authenticated() and request.user.has_perm('polls.can_vote')): # vote here else: return Ht
  3. 所属分类:其它

    • 发布日期:2021-01-20
    • 文件大小:49152
    • 提供者:weixin_38730331
  1. Python学习之asyncore模块用法实例教程

  2. 本文以实例分析了Python中asyncore模块的原理及用法,分享给大家供大家参考。具体分析如下: asyncore库是python的一个标准库,它是一个异步socket的包装。我们操作网络的时候可以直接使用socket等底层的库,但是asyncore使得我们可以更加方便的操作网络,避免直接使用socket,select,poll等工具时需要面对的复杂。 这个库很简单,包含了一个函数和一个类 * loop()函数 * dispatcher基类 需要注意的是,loop函数是全局的,不是dispa
  3. 所属分类:其它

    • 发布日期:2021-01-20
    • 文件大小:65536
    • 提供者:weixin_38553648
  1. python subprocess pipe 实时输出日志的操作

  2. * test11.py import time print 1 time.sleep(2) print 1 time.sleep(2) print 1 time.sleep(2) print 1 * test.py import subprocess p = subprocess.Popen(“python test11.py”, shell=True, stdout=subprocess.PIPE) # None表示正在执行中 while p.poll() is None:   ou
  3. 所属分类:其它

    • 发布日期:2021-01-19
    • 文件大小:35840
    • 提供者:weixin_38558659
  1. 基于Modbus的RS485通讯+STM32+IAR

  2. 近一直在看Modbus相关的内容,也在网上搜罗了许久,发现大部分内容都是基于协议的书面解释,很少有成功的例程供大家参考,在此将自己近更改调试通过的例子跟大家分享一下,在此要感谢某论坛的xukai871105.  介绍下附件工程:采用的MCU为STM32F103RBT6,ST库版本为3.5版,FreeModbus为1.5版,开发环境为IAR6.3版,调试器为Jlink V8,用到的调试工具为Jobs版的USB转RS485转接板。  话不多说,上图:代码中大部分都有详细的注释:      看看Job
  3. 所属分类:其它

    • 发布日期:2021-01-19
    • 文件大小:196608
    • 提供者:weixin_38717143
  1. jquer之ajaxQueue简单实现代码

  2. 没什么复杂的东西,就是用个array对象来做队列,维护ajax请求的顺序。下面给出代码: 代码如下: ;(function($) { $.ajaxQueue = { // 管理ajax请求的队列 requests: new Array(), // 把待发送的ajax请求加入队列 offer: function(options) { var _self = this, // 对complete,beforeSend方法进行“劫持”,加入队列处理方法poll xhrOptions = $.exte
  3. 所属分类:其它

    • 发布日期:2021-01-19
    • 文件大小:33792
    • 提供者:weixin_38620741
  1. WebSocket的通信过程与实现方法详解

  2. 什么是 WebSocket ? WebSocket 是一种标准协议,用于在客户端和服务端之间进行双向数据传输。但它跟 HTTP 没什么关系,它是基于 TCP 的一种独立实现。 以前客户端想知道服务端的处理进度,要不停地使用 Ajax 进行轮询,让浏览器隔个几秒就向服务器发一次请求,这对服务器压力较大。另外一种轮询就是采用 long poll 的方式,这就跟打电话差不多,没收到消息就一直不挂电话,也就是说,客户端发起连接后,如果没消息,就一直不返回 Response 给客户端,连接阶段一直是阻塞
  3. 所属分类:其它

    • 发布日期:2021-01-19
    • 文件大小:288768
    • 提供者:weixin_38732744
  1. 简单谈谈apache与nginx

  2. 一、 关于Apache与Nginx的优势比较     不断有人跟我说Nginx比Apache好、比Apache快之类。Nginx更主要是作为反向代理,而非Web服务器使用。我翻译过一本关于反向代理的技术书籍,同时精通Apache API开发,对Nginx和Apache的工作原理都略有了解,粗谈一下看法。   不管是Nginx还是Squid这种反向代理,其网络模式都是事件驱动。事件驱动其实是很老的技术,早期的select、poll都是如此。后来基于内核通知的更高级事件机制出现,如libevent里
  3. 所属分类:其它

    • 发布日期:2021-01-11
    • 文件大小:88064
    • 提供者:weixin_38741759
  1. IO多路复用之epoll全面总结(必看篇)

  2. 1、基本知识 epoll是在2.6内核中提出的,是之前的select和poll的增强版本。相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,将用户关系的文件描述符的事件存放到内核的一个事件表中,这样在用户空间和内核空间的copy只需一次。 2、epoll接口 epoll操作过程需要三个接口,分别如下: #include int epoll_create(int size); int epoll_ctl(int epfd, int
  3. 所属分类:其它

    • 发布日期:2021-01-10
    • 文件大小:94208
    • 提供者:weixin_38523251
  1. linux epoll机制详解

  2. 在linux 没有实现epoll事件驱动机制之前,我们一般选择用select或者poll等IO多路复用的方法来实现并发服务程序。在linux新的内核中,有了一种替换它的机制,就是epoll。 select()和poll() IO多路复用模型 select的缺点: 1.单个进程能够监视的文件描述符的数量存在最大限制,通常是1024,当然可以更改数量,但由于select采用轮询的方式扫描文件描述符,文件描述符数量越多,性能越差;(在linux内核头文件中,有这样的定义:#define __FD_
  3. 所属分类:其它

    • 发布日期:2021-01-09
    • 文件大小:178176
    • 提供者:weixin_38557757
  1. Linux内核中的定时

  2. 系统定时器频率(节拍率)是通过静态预处理器定义的,也是HZ,编写内核代码时,不要以为HZ值是固定不变的值。连续两次时钟的间隔时间叫做节拍,它等于节拍率分之一秒。高HZ有利于提供诸如poll和select函数运行的精度;有利于提高进程抢占的准确度;有利于获得更精细的解析度。但是高HZ也会减少处理器处理其他工作的时间,而且还会更频繁的打乱处理器高速缓存并增加耗电。   全局变量Jiffies用来记录自系统启动以来产生的节拍的总数,Jiffies一秒内增加的值是HZ,系统运行时间以秒为单位计算,等
  3. 所属分类:其它

    • 发布日期:2021-01-09
    • 文件大小:64512
    • 提供者:weixin_38616359
  1. Linux新的API signalfd、timerfd、eventfd使用说明

  2. 三种新的fd加入linux内核的的版本:   signalfd:2.6.22   timerfd:2.6.25   eventfd:2.6.22   三种fd的意义:   lsignalfd   传统的处理信号的方式是注册信号处理函数;由于信号是异步发生的,要解决数据的并发访问,可重入问题。signalfd可以将信号抽象为一个文件描述符,当有信号发生时可以对其read,这样可以将信号的监听放到select、poll、epoll等监听队列中。   ltimerfd   可以实现定时
  3. 所属分类:其它

    • 发布日期:2021-01-09
    • 文件大小:74752
    • 提供者:weixin_38631282
  1. BeyondPure-源码

  2. 超越纯粹 Suus van der Poll-192829 Annie Trinh-190578 Nisrina Scholsberg-192253 D'Shard Ellis-191591
  3. 所属分类:其它

    • 发布日期:2021-03-31
    • 文件大小:13631488
    • 提供者:weixin_42132359
  1. lutece-form-module-forms-poll-源码

  2. 插件民意测验 介绍 配置 用法 由生成-不直接编辑。
  3. 所属分类:其它

    • 发布日期:2021-03-30
    • 文件大小:376832
    • 提供者:weixin_42122986
  1. django-projects-源码

  2. django-todo-app 在Heroku中托管的基于Django的CRUD(“创建,读取,更新和删除”): : django-poll-app
  3. 所属分类:其它

    • 发布日期:2021-03-30
    • 文件大小:24576
    • 提供者:weixin_42099858
  1. libeventlearn:学习libevent的代码。发表自己的注释简单翻译源代码的大部分注释-源码

  2. I / O框架库概述 React堆模式 句柄(Handler)由于统一了事件源,一个事件一般跟一个句柄绑定在一起,事件马上之后会通过句柄通知这一个事件。在Linux中I / O事件对应的句柄->文件较小,信号事件->信号值 事件多路分配器(EventDemultiplexer)事件的到来是随机的,异步的。所以只能通过一个循环一直等待事件并进行处理---事件循环一般通过IO替代实现select poll epoll_wait 事件处理器(EventHandle)具体事件处理器(Conc
  3. 所属分类:其它

    • 发布日期:2021-03-24
    • 文件大小:826368
    • 提供者:weixin_42101164
  1. mlops-assignment-源码

  2. 任务分配 欢迎来到自动化世界 关于该项目 使用jenkins,docker,git和gihub自动化网站部署 步骤1:创建网页 1.使用git终端创建使用docker容器部署在网站中的网页2.在github中创建一个存储库,以将文件从本地存储库上传到远程存储库3.将页面上传到github 步骤2启动hpptd,jenkins服务 1.首先通过命令#systemctl start httpd启动httpd服务。 2.通过命令#systemctl启动jenkins服务启动jenkins 第三步:
  3. 所属分类:其它

    • 发布日期:2021-03-21
    • 文件大小:482304
    • 提供者:weixin_42117116
« 1 2 ... 26 27 28 29 30 31»