symbian 如何创建线程

       在symbian 中常使用活动对象CActive 来代替线程的使用,但活动对象不是真正意义的线程。 对于一些并发计算量大,实时性高的应用我们应使用线程来实现。

       symbian 使用RThread类来创建线程。RThread的基类是RHandleBase,另外RProcess,RMutex和RSession-Base都继承自RHandleBase。

       1.  构造线程对象

           RThread  iThread;

           const TInt KMinHeapSize=0x100;          

           iThread.Create(_L("threadname",ThreadFun,4096,KMinHeapSize,256*KMinHeapSize, this);

           iThread.Resume();  //运行线程

       2.  创建线程函数          

           static TInt ThreadFun(TAny *aPtr);

            线程函数可定义在该类中,但应定义成静态成员函数.

            TAny* 相当于void *  可使用static_cast<>  进行类型转换.

       3.  线程运行

             当一个线程创建后,线程处于挂起状诚,使用iThread.Resume()运行线程.

       4. 挂起线程

              iThread.Suspend()

       5. 结束线程

               iThread.Kill(KErrNone);  iThread.Terminate(KErrNone);

    6.释放资源

        iThread.Close();

    7.RMutex 互斥对象用于线程同步

         创建对象.iMutex.CreateLocal();

         互斥使用代码

         iMutex.Wait();

          .....
         iMutex.Signal();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值