商品详情大图

SIEMENS A5E00430098 吸收板

及时发货 交易保障 卖家承担邮费

商品详情

使用异步IO方式读鼠标和键盘

进程正常阻塞读键盘,然后将读鼠标设置为异步IO方式。进程正常阻塞读键盘时,如果鼠标没有数据的话,进程不关心读鼠标的事情,如果鼠标数据来了,底层鼠标驱动就会向进程发送一个SIGIO信号,然后调用注册的SIGIO信号捕获函数读鼠标数据。当然也可以反过来,进程正常阻塞读鼠标,然后将读键盘设置为异步IO方式。

异步IO这个名字怎么理解?

:比如以异步IO方式读鼠标数据为例,如果知道什么时间数据会来,等这个时间到时再去读数据,这就是步调统一的同步读。如果不知道什么时候会有数据来,这种就只能是什么时候数据来了就什么时候读,这种就是异步的读。之所叫异步,是因为我不知道你什么时候来,没办法统一步调(异步的),只能是随时来是随时读。  

不过使用异步IO有两个前提:

(1)底层驱动要有相应的发送SIGIO信号的代码,只有这样当底层数据准备好后,底层才会发送SIGIO信号给进程。我们之所以可以对鼠标设置异步IO,是因为人家在实现鼠标驱动时,有写发送SIGIO信号的代码,如果驱动程序是我们自己写的,发送SIGIO的代码就需要我们自己来写。

(2)应用层进行相应的异步IO的设置,否者无法使用异步IO应用层进行异步IO设置时,使用的也是fcntl函数。

使用异步IO时,应用层的设置步骤

①调用signal函数对SIGIO信号设置捕获函数。在捕获函数里面实现读操作,比如读鼠标。

②使用fcntl函数,将接收SIGIO信号的进程设置为当前进程。如果不设置的,底层驱动并不知道将SIGIO信号发送给哪一个进程。

fcntl(mousefd, F_SETOWN, getpid());

③使用fcntl函数,对文件描述符增设O_ASYNC的状态标志,让fd支持异步IO

SIEMENS 6ES7331-7KF02-0AB0 配件

SIEMENS 6ES7212-1BB23-0XB8 配件

ABB TC512V1 3BSE018059R1 电子产品-

卡特拉汉莫 D5PR3R1 配件-

AB 1606-XLE240E 模块

西门子 6SE6440-2UD33-7EA1 电子产品

西门子 6ES7414-3XM05-0AB0 电子产品

PHOENIX PSR-ESAM4/3X1\DC24/AC230V\6A 配件

FANUC A860-0360-V501 配件-

KEYENCE CV-110 控制器

安川 SGDV-330A01A 配件-

Matrox SOL6M4AE*(Y7247-03) 采集卡-

Matrox METE0R2MC/4*( Y751-0301) 采集-

SMC MGPM12-50Z 配件-

ABB LD GRB-01 位置检测模块-

ABB LD GRB-01 位置检测模块

AB 1762-L40BWAR 模块-

施耐德 XBTOT4320 配件

西门子 6SN1123-1AB00-1CA1,2*50A, 配件

西门子 1P 6SN1118-ONK01-OAAI 带内存卡 配件

西门子 222-1BF22-OXAO 配件

西门子 6SN1114-ONB01-OAA1 配件

西门子 6ES7 331-1KF01(00)-0AB0 电子产品

西门子 6ES7 216-2BD23-0XB0 电子产品

西门子 6SB2074-4AA00-0AA0 电子产品

ABB M2VA63B-4 电机

西门子 6SE6440-2UD22-2BA1 电子产品

SUNX EX-15E 配件

SCHNEIDER TSXAEZ801 电子产品-

SCHNEIDER TSXDMZ28DR 电子产品-

SCHNEIDER TSXDSZ08R5 电子产品

SCHNEIDER TSXDEZ12D2 电子产品-

西门子 6ES7 315-2AG10-0AB0 电子产品

西门子 6ES7 972-0BB42-0BA0 电子产品

" Siemens" QRA50M 电子产品

08492400-4.jpg@750w_750h_90Q

施耐德 170INT11000 模块

英飞凌 FZ1800R16KF4S1 配件

施耐德 171CCC96030 模块

日本东坂 TD-2M33 驱动-

科尔摩根 AKD-P01207-NACN-0054 电子产品-

GE IC200ALG326 模块

西门子 RXC21.1 控制器

AB 22B-D1P4N104 配件

三菱 FX3U-80MT/ES-A 配件

三菱 FX2N-16EX 配件

三菱 FX3U-1PG 配件

三菱 FX3U-485ADP-MB 配件

三菱 GS2107-WTBD 配件

SIEMENS 3TK2821-1CB30 配件

SIEMENS 6ES7241-1CH30-1XB0 配件

HP惠普 DPS-320KB-1 电源

AB 193-EC2EE 配件

西门子 6SE6440-2UD23-0BA1 电子产品

SIEMENS 6SE6420-2UD13-7AA1 电子产品

安川 CIMR-VCBA0006BAA 配件

AB MVI56-MCMR 配件

西门子 6ES7972-0BB60-0XA0 配件

SIEMENS 6ES7521-1BL00-0AB0 配件

SIEMENS 6ES7972-0AA01-0XA0 配件

SIEMENS 6ES7953-8LL31-0AA0 配件

SIEMENS 6ES7132-4BF00-0AA0 配件

SIEMENS 6ES7972-0CB20-0XA0 配件

光洋 TRD-2E2500V 配件

西门子 216-2BD23-0XB8 电气

西门子 223-1PL22-0XA8 电气

JUSTEK JSMD-02 配件

AB 1756-RM/A 光纤模块-

AB 1756-L73 CPU模块-


下一条:CIMR-G7A4022安川变频器
福建石屹科技有限公司为你提供的“SIEMENS A5E00430098 吸收板”详细介绍
福建石屹科技有限公司
主营:西门子,AB ABB,NI 迈创,GE 发那科
联系卖家 进入商铺

A5E00430098信息

最新信息推荐

进店 拨打电话 微信