//my_serial_queue is a serial_dispatch_queue
dispatch_async(my_serial_queue, ^{
//access a shared resource such as a bank account balance
[self changeBankAccountBalance];
});
Run Code Online (Sandbox Code Playgroud)
如果我提交100个访问并改变银行账户余额的任务,我理解串行队列将按顺序执行每个任务,但是在使用dispatch_async时这些任务是否也按顺序完成?
如果我异步提交到串行队列的任务#23需要很长时间才能完成怎么办?任务#24只在任务#23完成时启动,还是任务#24在任务#23完成之前启动?如果是这样,任务#24在启动其工作时是否有错误的银行账户余额,从而搞砸数据完整性?
谢谢!!
concurrency objective-c grand-central-dispatch ios dispatch-async
iPhone 的 XMPPFramework 功能强大。我已经启动并运行了,但是如何在后台保持连接超过 10 分钟?我将不胜感激有关如何完成此操作的更多文档/操作方法。
所以用例简单而常见:Joe 在线并且在 iPhone 聊天应用程序中。他离开聊天应用程序并转到 Safari,玩游戏、播放电影以及做其他事情 3 小时(或更长时间)。乔希望在此期间继续接收消息。
示例应用程序允许 Joe 在后台接收本地通知,但似乎只有 10 分钟。这是相关的代码(我认为)。谢谢!
为了帮助其他人,甚至达到这一点,您需要将 xmppstream 属性 enableBackgroundingSocket 设置为 YES(在您应该复制的 iphoneXMPP 示例项目中为您完成)和 appname-info.plist(即 iosChat- info-plist) 文件,您需要添加新的键/值对。您应该右键单击某处并“添加行”。您应该选择“所需的背景模式”键,然后输入“voip”。按下 Enter 后,Xcode 会检测到您的意思是“应用程序提供 IP 语音服务”。这让您有 10 分钟的时间让聊天应用程序在后台保持打开状态(我认为)。但是我们要无限期地,我怀疑答案就在下面的方法中。我是否应该在此方法或其他方法中“重新连接”,例如,[self connect](我有一个连接方法)?
- (void)applicationDidEnterBackground:(UIApplication *)application{
DDLogVerbose(@"%@: %@", THIS_FILE, THIS_METHOD);
if ([application respondsToSelector:@selector(setKeepAliveTimeout:handler:)])
{
[application setKeepAliveTimeout:600 handler:^{
DDLogVerbose(@"KeepAliveHandler");
// Do other keep alive stuff here.
}];
}}
Run Code Online (Sandbox Code Playgroud) 我的文件位于src目录下.但是,当我尝试使用"src/readme.txt"调用它时,找不到该文件.事实上,它声明java正在寻找"C:\ Documents and settings\john\My Documents\Downloads\eclipse-win32\eclipse\coolCarsProject\src\readme.txt".
我该如何解决?我不想一直放在绝对的路上.
我是否需要修复类路径,构建路径或更改项目根目录等?对于新手来说,从Eclipse的大约1000个设置中可以看出这一点并不明显.
有人能解释异步NSURL请求与GCD和NSOperationQueues之间的关系吗?
我不确定何时使用它们.
现在,当我需要将数据提取/上传到服务器时,我一直在"逃避"异步NSURL请求.但有人建议我应该使用GCD.我的问题是我不知道现实生活中的例子GCD会更好.有没有人对我有任何常见用例?例如,如果我使用GCD存储10个异步NSURL GET请求的队列,这对我有什么好处?在大型中央调度队列或NSOperationQueue中有异步NSURL请求是否有意义?
谢谢!
nsurlconnection nsoperationqueue grand-central-dispatch ios afnetworking
我有以下文字:
靠近、旁边、按顺序或沿着指定路线/方向跟随
我如何匹配 close 中“e”后面的空格,然后用制表符替换它?
虽然这对大家来说可能很容易,但我花了 4 个小时尝试这样做,但没有成功。
一般规则是“仅匹配第二个单词后面的空格”。我有超过 2000 条独特的行,这就是我需要正则表达式的原因。
谢谢你!!
ios ×3
afnetworking ×1
background ×1
concurrency ×1
connection ×1
eclipse ×1
file ×1
iphone ×1
java ×1
objective-c ×1
regex ×1
vim ×1
xmpp ×1