//
// ViewController.m
// test_message_01
//
// Created by jeffasd on 16/9/22.
// Copyright © 2016年 jeffasd. All rights reserved.
//
#import "ViewController.h"
@interface ViewController ()
@property (nonatomic, strong) NSMutableDictionary *reportPeerGoDicM;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.reportPeerGoDicM = [NSMutableDictionary dictionaryWithCapacity:0];
}
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
int randomTimeA = arc4random_uniform(2);
int randomTimeB = arc4random_uniform(2);
int randomTimeC = arc4random_uniform(3);
// NSLog(@"the random is %d", randomTimeA);
// randomTimeA = 1;
// randomTimeB = 1;
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(randomTimeA * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
NSLog(@"peer_exit");
[self reportPeerGoMessageToServer:@"peer_exit"];
});
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(randomTimeB * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
NSLog(@"stream_disconnect");
[self reportPeerGoMessageToServer:@"stream_disconnect"];
});
// dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(randomTimeC * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
// NSLog(@"stream_close");
// [self reportPeerGoMessageToServer:@"stream_close"];
// });
}
- (void)reportPeerGoMessageToServer:(NSString *)message{
@synchronized (self.reportPeerGoDicM) {
if (self.reportPeerGoDicM.count == 0) {
[self.reportPeerGoDicM setObject:message forKey:message];
NSLog(@"执行 - 0");
}else if (self.reportPeerGoDicM.count > 0){
if ([self.reportPeerGoDicM.allKeys containsObject:message]) {
[self.reportPeerGoDicM removeAllObjects];
[self.reportPeerGoDicM setObject:message forKey:message];
NSLog(@"执行");
}else{
[self.reportPeerGoDicM setObject:message forKey:message];
}
}
}
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
多条网络消息 只处理一次
最新推荐文章于 2021-12-29 15:08:15 发布