首 页技术文章资源下载WAP论坛用户中心繁體中文
设为首页
加入收藏
联系我们
您当前的位置:中国WAP技术门户网站 -> 技术文章 -> 手机编程 -> Symbian -> 基础知识 -> 文章内容 退出登录 用户管理
热门文章
· [转载] wap2.0技巧篇
· [转载] WAP 2.0简介
· WML语言基础(WAP建站...
· [转载] WAP/WEB网站建设
· JSP技术在WAP开发中...
· [图文] WML语言基础(WAP建站...
· WML语言基础(WAP建站...
· [转载] 《女性安全期测算》...
· [转载] 跟你详说WAP
· asp.net开发wap程序...
相关文章
· Symbian OS 精要
· Symbian编程VC开发环...
· Symbian下用C++实现...
· 用C++实现的访问Sym...
· 个简单的Symbian OS...
· Symbian 基本数据类...
· [图文] Symbian概述
· Symbian内存管理
· [图文] 使用Carbide.vs与VS...
· [图文] Nokia官方培训 Foru...
 
Symbian OS 开发初级手册 9 Active Object 基本概念
文章作者:杨宝昌 [ 收藏此页到365Fav ]
文章来源:转载 [ 收藏此页到365Key ]
发布时间:2005-9-14 14:35:37 减小字体
文章编辑:小凯 增大字体
上课讲了Symbian OS中多线程的使用, 这可我们说说Symbian OS中使用更频繁的一个框架:Active Object(这里简称AO)。
上课讲了Symbian OS中多线程的使用, 这可我们说说Symbian OS中使用更频繁的一个框架:Active Object(这里简称AO)。
多线程在传统程序中使用非常的广泛, 但是在资源有限的小型设备上却不一定是上乘选择。 通过上课的例程我们看到每个线程都要分配一定的内存, 如果所有的异步操作都通过多线程来做的话, 对系统是一个不小的负担。 AO的设计就是要在同一个线程内处理异步操作。

AO 是在 ActiveScheduler (AS) 的协调下工作的, 当一个AO发出异步请求后,请求函数会立即返回,AO可以继续运行,或者等待。 异步操作完成后, AS会得到通知,然后它调用相应的AO中的RunL函数。 所以AO的普遍用法就是给异步操作创建一个请求函数, 然后在RunL中处理操作结果。举例说明:我们有一个socket, 需要从网络读入一些数据然后输出, 那么我们就需要:

一个请求函数:
void MyA:RequestReceive()
{
iSocket.Recv(iBuf,...,iStatus);
}

和RunL:
void MyA:RunL()
{
iConsole->Printf(iBuf);
}

使用此AO的时候, 就可以先调用RequestReceive()然后继续做其他的事情, 当socket读入完毕后AS会调用这个AO的RunL,那么接受的数据就会被打印出来了。当然,要实际在程序中使用AO我们还需要学习很多东西。到此你只需要对AO有个概念上的理解。

以下是在NewLC转过来的一个图示, 基本勾画出了Active Object的框架:



今天先说到这里, 因为现在比放假的时候忙了许多, 没有时间大块的写文章了。 只能每次写一小段, 这样一些比较大的话题就要分n课来说了。
 
[] [返回上一页] [打 印] [收 藏]
下一篇文章:俄罗斯方块 symbian
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]

关于我们  |   版权声明  |   广告服务  |   帮助中心  |   联系我们  |   网站地图  |   友情链接 
Copyright © 2004-2005 Wapzj.Com. All Rights Reserved .
粤ICP备05000730号 在线人数: