⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 x1724.html

📁 GTK编程
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"><HTML><HEAD><TITLE>监控IO</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+"><LINKREL="HOME"TITLE="GTK+ 2.0 教程"HREF="book1.html"><LINKREL="UP"TITLE="超时、IO 和 Idle 函数"HREF="c1713.html"><LINKREL="PREVIOUS"TITLE="超时、IO 和 Idle 函数"HREF="c1713.html"><LINKREL="NEXT"TITLE="Idle 函数"HREF="x1744.html"></HEAD><BODYCLASS="SECT1"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#840084"ALINK="#0000FF"><DIVCLASS="NAVHEADER"><TABLESUMMARY="Header navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><THCOLSPAN="3"ALIGN="center">GTK+ 2.0 教程</TH></TR><TR><TDWIDTH="10%"ALIGN="left"VALIGN="bottom"><AHREF="c1713.html"ACCESSKEY="P">&#60;&#60;&#60; Previous</A></TD><TDWIDTH="80%"ALIGN="center"VALIGN="bottom">超时、IO 和 Idle 函数</TD><TDWIDTH="10%"ALIGN="right"VALIGN="bottom"><AHREF="x1744.html"ACCESSKEY="N">Next &#62;&#62;&#62;</A></TD></TR></TABLE><HRALIGN="LEFT"WIDTH="100%"></DIV><DIVCLASS="SECT1"><H1CLASS="SECT1"><ANAME="SEC-MONITORINGIO">监控IO</H1><P>GDK ( GTK 的底层库) 的一个极好的特性是能让它检查文件描述符 (如 open(2) 或 socket(2) 返回的) 上的数据。这对网络应用程序尤其有用。这个函数:</P><TABLEBORDER="0"BGCOLOR="#E0E0E0"WIDTH="100%"><TR><TD><PRECLASS="PROGRAMLISTING">gint gdk_input_add( gint              source,                    GdkInputCondition condition,                    GdkInputFunction  function,                    gpointer          data );</PRE></TD></TR></TABLE><P>第一个参数是你想监控的文件描述符。第二个参数指定你想让 GDK 寻找什么。它可以是:</P><P></P><UL><LI><P><TTCLASS="LITERAL">GDK_INPUT_READ</TT> --- 当文件描述符有数据可供读取时调用你的函数。</P></LI><LI><P><TTCLASS="LITERAL">GDK_INPUT_WRITE</TT> --- 当文件描述符做好写的准备时调用你的函数。</P></LI></UL><P>我确信你已经看出来了,第三个参数是当满足上述条件时你想要调用的函数,第四个参数是传递给该函数的参数。</P><P>返回值是一个标记,该标记可用于让 GDK 停止对文件描述符的监控,用函数:</P><TABLEBORDER="0"BGCOLOR="#E0E0E0"WIDTH="100%"><TR><TD><PRECLASS="PROGRAMLISTING">void gdk_input_remove( gint tag );</PRE></TD></TR></TABLE><P>回调函数应该声明为:</P><TABLEBORDER="0"BGCOLOR="#E0E0E0"WIDTH="100%"><TR><TD><PRECLASS="PROGRAMLISTING">void input_callback( gpointer          data,                     gint              source,                      GdkInputCondition condition );</PRE></TD></TR></TABLE><P><TTCLASS="LITERAL">source</TT> 和 <TTCLASS="LITERAL">condition</TT> 就是前述的参数。</P></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLESUMMARY="Footer navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><AHREF="c1713.html"ACCESSKEY="P">&#60;&#60;&#60; Previous</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="book1.html"ACCESSKEY="H">Home</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><AHREF="x1744.html"ACCESSKEY="N">Next &#62;&#62;&#62;</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">超时、IO 和 Idle 函数</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="c1713.html"ACCESSKEY="U">Up</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">Idle 函数</TD></TR></TABLE></DIV></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -