ChinaUnix.net
相关文章推荐:

python异步io

【背景】有一位Q友由于在家不能上网,所以代他发了本帖。希望大家多多交流。他的问题如下: 从网上找到如下代码: 二、使用select实现异步I/O 所谓异步I/O,打个比方,就是如果一大群人都想你听他说话,那么你就给他们每人一分钟的时间说,大家轮流说,没说完的待会儿轮到时再继续说。也就是一个时间片的方法。 要实现异步I/O,我们可以通过使用框架asyncore/asynchat或Twisted,它们都是基于select函数或poll函数(poll只适于类...

by diyself - Python - 2008-11-26 12:34:29 阅读(4618) 回复(4)

相关讨论

关于异步io 记得几年前使用MFC编程的时候,曾经使用过windows的异步socket。 当在socket句柄上设置好关心的事件(如,可读、可写)后,如果事件发生,则指定的窗口会收到一个指定的消息。 int WSAAsyncSelect(SOCKET s, HWND hWnd, unsigned int wMsg, long lEvent); 然后窗口例程取得消息,对socket进行处理(如,recv、send)。 linux也支持类似的异步io(不局限于socket),如果事件发生,指定的进程会收到一个指定的信号,然后...

by wushuan10141 - Linux文档专区 - 2010-01-19 11:30:08 阅读(736) 回复(0)

下面这两段来自apue v2 One limitation of asynchronous I/O is that there is only one signal per process. If we enable more than one descriptor for asynchronous I/O, we cannot tell which descriptor the signal corresponds to when the signal is delivered. The Single UNIX Specification includes an optional generic asynchronous I/O mechanism, adopted from the real-time draft standard. It is unrelated t...

by koolcoy - C/C++ - 2010-02-07 21:36:49 阅读(2094) 回复(6)

在HPUX 11.23的操作系统上,安装了Oracle 9206,通过以下方式打开异步io: 1、修改max_async_ports参数为7000 2、重启主机后 vi /etc/privgroup 添加如下行: dba RTSCHED RTPRio MLOCK chown oracle:dba /dev/async chmod 660 /dev/async 数据库正常启动 第二天,发现登录数据库很慢,通过vmstat命令看到block的进程队列中有40多个进程,此时CPU并不繁忙,usr在20左右,sys在10以下。 从数据库层面关闭异步io后,登录速度恢复正...

by bug1981 - HP-UX - 2009-05-05 09:10:29 阅读(3196) 回复(3)

在HPUX 11.23的操作系统上,安装了Oracle 9206,通过以下方式打开异步io: 1、修改max_async_ports参数为7000 2、重启主机后 vi /etc/privgroup 添加如下行: dba RTSCHED RTPRio MLOCK chown oracle:dba /dev/async chmod 660 /dev/async 数据库正常启动 第二天,发现登录数据库很慢,通过vmstat命令看到block的进程队列中有40多个进程,此时CPU并不繁忙,usr在20左右,sys在10以下。 从数据库层面关闭异步io后,登录速度恢复正...

by bug1981 - HP-UX - 2009-05-05 09:10:29 阅读(4072) 回复(3)

Linux® 中最常用的输入/输出(I/O)模型是同步 I/O。在这个模型中,当请求发出之后,应用程序就会阻塞,直到请求满足为止。这是很好的一种解决方案,因为调用应用程序在等待 I/O 请求完成时不需要使用任何中央处理单元(CPU)。但是在某些情况中,I/O 请求可能需要与其他进程产生交叠。可移植操作系统接口(POSIX)异步 I/O(Aio)应用程序接口(API)就提供了这种功能。在本文中,我们将对这个 API 概要进行介绍,并来了解...

by itlanger - Linux文档专区 - 2008-12-20 16:29:15 阅读(1693) 回复(0)

为支持异步通知机制,驱动程序涉及以下3项工作 支持F_SETOWN命令设备,能在这个控制命令中设置filp->owner为对应PID,已经由内核完成 支持F_SETFL命令处理,每当FASYNC标志改变的时候,驱动程序中的fasync()函数将得以执行 在资源可获得时,调用kill_fasync()函数发出信号 处理FASYNC标志变更的函数 int fasync(int fd, struct file *filp, int mode, struct fasync_struct **fa) 发出信号的函数 void kill(struct fasync_struct **f...

by frensky2 - Linux文档专区 - 2008-06-28 17:01:31 阅读(676) 回复(0)

大家能不能举几个例子说说异步io在什么需求下使用 谢谢.......

by ruchong - C/C++ - 2008-05-03 02:24:28 阅读(1843) 回复(2)

使用 #pstat -a | grep aios | wc -l,显示有80个aio服务器. 但使用 ## lsdev -C|grep aio aio0 Available Asynchronous I/O (Legacy) posix_aio0 Defined Posix Asynchronous I/O # 使用 smitty chgsys将 STATE to be configured at system restart available ,重启后,再次用 # lsdev -C|grep aio查询,但其状态仍然为 Defined. Why?要如何才能使aio的状态变为av...

by passionw2z - AIX - 2007-03-22 14:33:03 阅读(2993) 回复(11)

使用 #pstat -a | grep aios | wc -l,显示有80个aio服务器.\r\n但使用\r\n## lsdev -C|grep aio\r\naio0 Available Asynchronous I/O (Legacy)\r\nposix_aio0 Defined Posix Asynchronous I/O\r\n# \r\n使用 smitty chgsys将\r\n STATE to be configured at system restart available \r\n,重启后,再次用 \r\n# lsdev -C|grep aio查询,但其状态仍然为 Defined.\r\n\r...

by passionw2z - AIX - 2007-03-22 14:33:03 阅读(4572) 回复(11)

一、说说异步io(Aio) 在Hp-ux中,当采用同步io的方式时,这就意味着在下一次写io进行之前,前一次io必须返回"成功写完成"的信息,可以看到同步io方式在io负荷比较大的系统存在着性能的瓶颈。而采用异步io方式时,在写请求发出之后操作系统会立即反回给应用一个写成功的信息,余下的事就由操作系统完成了。在Hp-ux中使用Oracle、Sybase这些数据库时,为减少io的瓶颈、提高库的性能,建议打开异步io,Hp在这方面相对Aix来说相对麻烦一些。 ...

by justbethere - HP文档中心 - 2006-07-19 11:29:57 阅读(2007) 回复(0)