【发布时间】:2022-01-17 00:42:45
【问题描述】:
我知道大多数人都会使用 dispatchqueue.main.async 或 dispatch_async(dispatch_get_main_queue(), ^{,但是从主线程调用 Objective C 的正确方法是什么?
具体来说,我想从查询代码中的主线程调用一个 textfieldview。
例如:
NSString *qry = [NSString stringWithFormat:
@"SELECT [ID] AS Identify "
" , Number AS Zeros "
" , Facils AS Buildings "
" FROM tableTod "
" WHERE Facils ='%@' "
, self.websiteTextField.text
];
【问题讨论】:
-
主队列是对应于主线程的执行队列,所以分派到主队列会运行主线程上的代码。有什么可以阻止你这样做的吗?
-
该代码的语法行是什么?
-
这是您在上面发布的语法:
dispatch_async(dispatch_get_main_queue(), ^{ ... })您要在主线程上运行的代码进入块内部 (^{ ... }) -
扩展@Rob 的观点:这可能是一个SQL 注入漏洞。有关更多信息,请参阅bobby-tables.com。
标签: ios objective-c multithreading exception call