Symbian:如何以正确的方式取消套接字操作

时间:2010-06-24 10:31:32

标签: sockets symbian

我想问一个关于在Symbian上取消套接字操作的正确方法的问题。基本上,据我所知,我们有两种选择:

  1. 在用于异步请求的ActiveObject上调用CActive :: Cancel()。
  2. 调用RSocket :: CancelRead()或RSocket :: CancelSend()或RSocket :: CancelAll()
  3. 哪种方式正确?或者我可以调用两种方法 - 来自CActive和来自RSocket?

    提前致谢。

1 个答案:

答案 0 :(得分:0)

我没有使用RSocket类编写任何东西,但是从它的API中我猜它是这样使用的:你有一个AO并且它将它的iStatus传递给其中一个RSocket异步方法(Send(),Read(),Recv ()等)。在这种情况下,您应该在RSocket上调用cancel(如果您将iStatus传递给Send(),则取消取消(),如果您使用了Read()等,则取消读取()或者只使用CancelAll()),它将使用KErrCancel完成您的AO。