我对Objective-C真的很陌生。
首先请看代码:
这是财产:
@property (atomic) IBOutlet NSTextView *txtResponse;
这是行动:
- (IBAction)sendReq:(id)sender {
@synchronized(self)
{
request *req = [[request alloc] init];
voidCallback callback = ^(NSURLResponse *resp, NSData *data, NSError *error) {
NSString *val = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
[self.txtResponse setString:val];
//NSLog(val);
};
[req setUrl:[[NSURL alloc] initWithString:@"http://foo.bar"]];
[req setCallback:callback];
[req send];
}
}
当我尝试使用时 UI 冻结[self.txtResponse setString:val];
我也尝试了没有问题的代码@synchronized(self)
问题出在哪里?
提前致谢!