AO/线程/进程
文章平均质量分 62
程序员丹尼尔
Coding is not life
展开
-
Symbian CTimer类中继承子类使用说明
收藏 在使用CTimer中时,如果继承子类在启动定时时(如CTimer::After(TTimeIntervalMicroSeconds32 )),必须得先调用CTimer的中CTimer::ConstructL(),方法(此方法应该是对RTimer的一些初始化),再有就是如果CTimer::After(TTimeIntervalMicroSeconds32 aWaitTime)),的aWait转载 2010-03-03 10:35:00 · 726 阅读 · 1 评论 -
How to create a server from scratch
<br /><br /> <br /> <br /> <br />This code shows how to create a server from scratch. It shows how to implement the server class, that represents the server itself, and the session, that is created for each communication channel opened from client to serve翻译 2010-12-24 15:40:00 · 563 阅读 · 0 评论 -
RThread.Rendezvous()是做什么用的?
<br /><br /> <br />Rendezvous, RThread<br />各位达人:<br />小弟不才,不知道RThread.Rendezvous()是做什么用的(在server端都会用到这个)?sdk里面如下描述,但是不明白<br />往指点一二。<br />Creates a Rendezvous request with the thread.<br />The request is an asynchronous request, and completes:<br />when t转载 2010-12-24 14:36:00 · 1024 阅读 · 0 评论 -
RChangeNotifier和CEnvironmentChangeNotifier 的使用
<br /><br /> 收藏<br /> RChangeNotifier <br />CEnvironmentChangeNotifier <br />可以用来监视是否到达了午夜,位置改变,有线程死掉了,系统时间被修改,电量变化等事件,有因内存不足引起的分配失败等事件<br /> RChangeNotifier 和 CEnvironmentChangeNotifier 的关系类似于RTimer和CTimer的关系。<br />RChangeNotifier 是阻塞的,使用的时候最好放在一个CActive里转载 2011-01-12 16:52:00 · 469 阅读 · 0 评论 -
RThread::RequestComplete 和AO 的使用
<br /> 收藏 <br /> <br />RThread::RequestComplete() 的意思是通知这个线程所请求的状态已经完成. 和User::RequestComplete()作用一样,只不过User::RequestComplete()是通知本线程. 通常多线程都和AO配合使用,这样可以使原本做单一工作的线程方便的通过状态机控制来做更复杂的工作.如果这个状态机受主线程控制,那么主线程就会调用子线程的RThread::RequestComplete()来通知子线程.另外一般来说主线程和子线程转载 2011-01-25 22:05:00 · 970 阅读 · 0 评论 -
DOS查看QQ好友IP地址
<br />不用软件2007-12-06 18:39不喜欢使用那些修改过的QQ客户端软件(比如珊瑚虫这类,更没有安装过这些软件。但是我想知道QQ好友的IP地址。本文pcpxp.com 就教给您方法<br />首先要和对方不断的聊天,然后打开命令提示符(开始,运行,输入cmd。或在开始菜单==>所有程序==>附件=>命令提示符)...然后输入一下命令<br />netstat -n<br />此时我们可以看到一栏IP地址:<br />Active Connections<br />Proto Local转载 2011-03-29 16:19:00 · 1072 阅读 · 0 评论 -
[S60Ex]进程间同步控制方法
2009-06-23 23:43从CS架构的示例代码中看到两种方式.<br /><br />1. 信号量。来自S60Ex/ClientServerSync<br />//=================client process========<br /> RSemaphore semaphore;<br /> result = semaphore.CreateGlobal( KTimeServerSemaphoreName, 0 );<br /> if ( result != KEr转载 2011-03-29 15:41:00 · 581 阅读 · 0 评论 -
symbian线程和进程
(2009-11-23 12:23) Symbian OS 中,针对有限的硬件资源,使用AO来实现多任务,与AO相比,多线程具有更高的运行期要求:线程上下文切换比同一线程中AO切换慢一个数量级;线程需要更大空间的开销,通常线程要有4KB内核空间和8KB用户空间的程序栈,相比之下,AO只需C++对象的空间(通常小于1KB)。 使用线程和AO实现多任务的最大区别是它们被调用的方式不同。A转载 2011-06-12 08:58:00 · 583 阅读 · 0 评论 -
如何捕捉panic
收藏 How to catch a panichttp://wiki.forum.nokia.com/index.php/How_to_catch_a_panichttp://wiki.forum.nokia.com/index.php/%E5%A6%82%E4%BD%95%E6%8D%95%E6%8D%89panicFrom Forum Nokia WikiYes, a panic.转载 2011-06-12 09:03:00 · 701 阅读 · 0 评论 -
How to create a simple Thread
.From Forum Nokia WikiIn Symbian, the class RThread is used to manipulate threads. An object of type RThread represents a handle to a thread, because the thread itself is a kernel object. An RThr转载 2011-06-12 08:50:00 · 810 阅读 · 0 评论 -
Symbian OS internals: C/S structure basic
<br /> <br />Symbian CS结构主要的类关系如下: <br /><br />其中重要的几个函数:<br />一般在client端会有connect(),这个函数是自己写的,名字随便,但是功能是建立server进程(如果有的话就通过名字find),然后调用RSessionBase的 CreateSession()函数,这里面建立了一个session的内核对象。个人感觉凡事R打头的类在symbian里都封装了相应的系统调用。通过这些个操作进入内核。<br />要注意的是,在建立server进程转载 2010-11-01 11:59:00 · 619 阅读 · 0 评论 -
Symbian之client-server架构
<br /> <br />转http://developer.symbian.org/wiki/index.php/Client-Server_Framework_(Fundamentals_of_Symbian_C%2B%2B)<br /><br />1. Client/Server架构<br />在Symibian OS中所有的异步服务都是Server通过C/S架构来实现的。Client是利用Server提供的特定服务的程序,Server接受来至Client 的请求消息并同步或异步的处理他们。C/S架构转载 2010-10-29 14:37:00 · 626 阅读 · 0 评论 -
三个timer相关的类之一
- CTimer 收藏 class CTimer : public CActive; Description:- Base class for a timer active object.- This is an active object that uses the asynchronous services provided by RTimer, to generate ev转载 2010-03-03 10:36:00 · 543 阅读 · 0 评论 -
WaitForRequest(TRequestStatus &aStatus1, TRequestStatus &aStatus2)
WaitForRequest()static IMPORT_C void WaitForRequest(TRequestStatus &aStatus1, TRequestStatus &aStatus2);DescriptionWaits for either of two specific asynchronous requests to complete.等待任何一个异步请求完成Th翻译 2010-03-08 18:55:00 · 874 阅读 · 0 评论 -
基于AO的线程间通信
Cross-thread messaging with CActive objects 基于AO的线程间通信 9 Dec 2008 - 11:09 Keywords : Thread Program flow CActive Its been (literally) years since my last contribution here on newlc.com, so I翻译 2010-03-12 17:23:00 · 2307 阅读 · 1 评论 -
Symbian OS 活动对象正解
关键字: 活动对象 转载自:http://svyee.javaeye.com/blog/423930 第1节 理解活动对象 Symbian OS中的活动对象的使用无疑是最基础的、最频繁的、最重要的。什么是活动对象呢? 大家学习一个新的事物时,总是会将这个新的事物与自己认知的事物相比较,从而达到快速学习的目的。我开始学习Symbian的时候,我查看很多Symbian书籍转载 2010-04-22 17:06:00 · 625 阅读 · 0 评论 -
从线程角度看AO框架
Active Object (AO) 框架,是Symbian的基本工作部分。它是为了满足多个任务同时执行的要求。在 Windows/Unix 平台上,我们可以不加思索的使用多线程来完成多任务。可是在嵌入式平台上,系统的资源是有限的。比如CPU、内存都比我们平时用的个人计算机要低。这就要求嵌入式系统能够合理的使用系统资源。不能频繁的切换线程或者进程。Symbian为这种特别需求设计了Active转载 2010-04-23 14:23:00 · 565 阅读 · 0 评论 -
User::RequestComplete 含义
有时候你会在一些源码中发现类似下面的代码: TRequestStatus* s = &iStatus; SetActive(); User::RequestComplete(s, KErrNone); 如果这段代码是在当前的活动对象类的一个函数中实现, 那么当这段代码执行完之后,将会立即调用此类的RUN()函数 具体过程是这样: 发送信号到Active scheduler(通过 threa原创 2010-04-23 14:00:00 · 876 阅读 · 0 评论 -
关于RMsgQueue类的使用
关于RMsgQueue类的使用 RMsgQueue类是Symbian OS EKA2才提供的一个类,最近因为项目中要使用,为此对使用进行如下小结。因为RMsgQueue类只是一个封装好的内核资源类,类似于RSocket和RTimer类,要想使用它进行异步操作就必须对其用AO类来封装,从而来实现监听消息,在有消息过来时得到通知并根据消息内容进行相对应的处理。那这个消息内容又该如转载 2010-04-23 14:56:00 · 866 阅读 · 0 评论 -
Symbian平台移植之——活动规划器CActiveScheduler的灵活应用
【原创】 收藏 由于做工程的移植工作,需要移植代码到Symbian平台上,但之前代码的架构与Symbian平台看起来是有冲突,体现在之前代码中有一个独立线程用来做事件驱动、分发,然后在事件回调中完成自己的逻辑(包括异步请求),该线程是用 while(1) { getevent(); dispatchevent() }来实转载 2010-04-26 12:07:00 · 627 阅读 · 0 评论 -
信号灯RSemaphore在线程里的用处
<br />symbian 2008-04-01 22:20:57 阅读119 评论0 字号:大中小 订阅 <br />Symbian提供了活动对象和活动对象调度器来模拟多线程,但有些情况并不能达我们需要的效果。比如声音引擎使用活动对象的处理方法,有时会产生明显的延迟。解决声音引擎响应延迟的问题,开另一条线程是较合理的办法。可是新开的线程与主线程如何配合工作呢?<br /> Symbian提出了信号灯的概念。<br /> 比如需要解决这样一个问题:A线程进行下一步工作时,需要B线程完成某转载 2010-10-29 14:33:00 · 940 阅读 · 0 评论 -
从线程角度看AO框架
<br /><br />Active Object (AO) 框架,是Symbian的基本工作部分。它是为了满足多个任务同时执行的要求。在 Windows/Unix 平台上,我们可以不加思索的使用多线程来完成多任务。可是在嵌入式平台上,系统的资源是有限的。比如CPU、内存都比我们平时用的个人计算机要低。这就要求嵌入式系统能够合理的使用系统资源。不能频繁的切换线程或者进程。<br />Symbian为这种特别需求设计了Active Object (AO)框架。AO框架是运行于一个线程内部的调度框架。其基本思想转载 2011-05-04 17:14:00 · 626 阅读 · 0 评论