首页 > 其他 > 详细

这些代码都是 吃屁的,

时间:2014-01-15 08:41:34      阅读:581      评论:0      收藏:0      [点我收藏+]

   XMPPElementReceipt *receipt = [XMPPElementReceiptnew];

//    * - Do an instantaneous check (pass timeout == 0)

//    * - Wait until the element has been sent (pass timeout < 0)

//    * - Wait up to a certain amount of time (pass timeout > 0)

    [mStream sendElement:message andGetReceipt:&receipt];

    [receipt wait:-1];

 

//    * If you later want to check to see if the element has been sent:

//        *

//        * if ([receipt wait:0]) {

//            *   // Element has been sent

//            * }

//    *

//    * If you later want to wait until the element has been sent:

//    *

//    * if ([receipt wait:-1]) {

//        *   // Element was sent

//        * } else {

//            *   // Element failed to send due to disconnection

//            * }

    if ([receipt wait:-1])

    {

        TTLog(@"was sent");

    }

    else{

        TTLog(@"sent faild");

    }

 1,receipt wait = 0,即时检查,不过要 结合timer,不然的话,马上检查一定发送失败的,

2,receipt wait > 0,等上几分钟检查,如果是 放到主线程,会卡几分钟的,如果改成异步的是没有问题的,不过,即便是异步,设置等待的时间太短,即便发送成功了,也会返回no 的

 BOOL messageState =[receipt wait:0.0000001];

    if (messageState)

    {

        TTLog(@"was sent");

    }

    else{

        TTLog(@"sent faild");

    }

3,receipt wait < 0,等待发送完检查,同样的放到主线程,会卡的,同上,

这些代码都是 吃屁的,

原文:http://www.cnblogs.com/guligei/p/3513908.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!