我为NSThread和Grand Central Dispatch(GCD)创建了一些测试代码:
- (void)doIt:(NSNumber *)i
{
sleep(1);
NSLog(@"Thread#%i", [i intValue]);
}
- (IBAction)doWork:(id)sender
{
for (int i = 0; 10 > i; i++) {
NSNumber *t = [NSNumber numberWithInt:i];
[NSThread detachNewThreadSelector:@selector(doIt:) toTarget:self withObject:t];
}
sleep(1);
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_apply(10, queue, ^(size_t i) {
sleep(1);
NSLog(@"GCD#%u",(int)i);
});
}
Run Code Online (Sandbox Code Playgroud)
结果如下:
2011-04-13 19:41:07.806 GDC[1494:5e03] Thread#0
2011-04-13 19:41:07.813 GDC[1494:6903] Thread#3
2011-04-13 19:41:07.812 GDC[1494:6403] Thread#2
2011-04-13 19:41:07.812 GDC[1494:5f03] Thread#1
2011-04-13 19:41:07.813 GDC[1494:6e03] Thread#4
2011-04-13 19:41:07.814 GDC[1494:7303] Thread#5
2011-04-13 19:41:07.814 GDC[1494:7803] Thread#6
2011-04-13 …Run Code Online (Sandbox Code Playgroud) loadView在UIViewController没有XIB文件的情况下计算方法中的视图大小的最佳做法是什么?
这是我的解决方案:
- (void)loadView {
//Calculate Screensize
BOOL statusBarHidden = [[UIApplication sharedApplication] isStatusBarHidden ];
BOOL navigationBarHidden = [self.navigationController isNavigationBarHidden];
BOOL tabBarHidden = [self.tabBarController.tabBar isHidden];
CGRect frame = [[UIScreen mainScreen] bounds];
if (!statusBarHidden) {
frame.size.height -= [[UIApplication sharedApplication] statusBarFrame].size.height;
}
if (!navigationBarHidden) {
frame.size.height -= self.navigationController.navigationBar.frame.size.height;
}
if (!tabBarHidden) {
frame.size.height -= self.tabBarController.tabBar.frame.size.height;
}
UIView *v = [[UIView alloc] initWithFrame: frame];
[v setBackgroundColor: [UIColor whiteColor] ];
[v setAutoresizingMask: UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight ];
[self setView: v ];
[v release]; …Run Code Online (Sandbox Code Playgroud) 我从以下网址下载了mitmproxy:https://github.com/cortesi/mitmproxy并使用以下命令安装mitmproxy:
sudo python setup.py install
Run Code Online (Sandbox Code Playgroud)
如果我尝试启动mitmproxy:
./mitmproxy -p 8899
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Traceback (most recent call last):
File "./mitmproxy", line 19, in <module>
from libmproxy import proxy, console, cmdline
File "/Users/carl.jahn/Downloads/cortesi-mitmproxy-bc3ba4c/libmproxy/proxy.py", line 24, in <module>
import utils, flow, certutils
File "/Users/carl.jahn/Downloads/cortesi-mitmproxy-bc3ba4c/libmproxy/certutils.py", line 2, in <module>
from pyasn1.type import univ, constraint, char, namedtype, tag
ImportError: No module named pyasn1.type
Run Code Online (Sandbox Code Playgroud)
我该如何修复错误?
谢谢
更新:
好的,我修好了
我在iOS 4.3.5通过临时部署(通过HTTP下载)安装了我的应用程序的手机上看到此错误:
Dyld错误消息:
Symbol not found: _OBJC_CLASS_$_NSJSONSerialization
Expected in: /System/Library/Frameworks/Foundation.framework/Foundation
Run Code Online (Sandbox Code Playgroud)
应用程序中的代码不会调用iOS 5库,除非已经显示存在类(即if(NSClassFromString(@"NSJSONSerialization")!=nil),因此问题不是调用iOS 5iOS 4设备上的库.
应用程序本身包含一个静态库,它是我自己的代码,是NSJSONSerialization引用存在的地方.
iOS 4.3如果直接从xcode(即通过USB线连接到开发机器的iPhone)运行,该应用程序在设备上完美运行.但是,当通过adhoc部署在同一设备上运行时,我会看到崩溃.
adhoc存档是通过Product->Archivein 构建的xcode 4,然后我使用'Distribute'按钮创建Ad-Hoc部署.ipa文件.
该应用程序几乎立即崩溃,让我觉得可能根本没有调用我的代码,这是我的存档构建设置可能在这里不正确?
非常感谢您提供帮助的任何时间!
使用代码示例的简短问题:
NSLog(@"%i", [[[NSArray alloc] init] retainCount]);
NSLog(@"%i", [[[NSMutableArray alloc] init] retainCount]);
Run Code Online (Sandbox Code Playgroud)
输出:
2
1
Run Code Online (Sandbox Code Playgroud)
为什么NSArray和NSMutableArray中的retainCount不同?
可能重复:
这个bash fork炸弹是如何工作的?
嗨,
快速提问.
这个shell命令如何工作以及为什么它的cpu使用率高达100%?
: ( ) { : | : & } ; :
Run Code Online (Sandbox Code Playgroud) 我有一个问题是创建一个预处理器宏函数,它连接两个字符串并"返回"一个NSString(@"...")值.
这是我尝试过的:
#define ObjectKeyMake(NAME) @"com.test.##NAME"
Run Code Online (Sandbox Code Playgroud)
如果我通过电话打印结果我得到:
NSLog(@"%@", ObjectKeyMake(foo)); // com.test.##NAME
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:如何在预处理器宏中连接2个字符串并"返回"NSString(@"..")?
不,我不能使用,#define ObjectKeyMake(NAME) [@"com.test." stringByAppendingString: NAME]因为我需要一个编译时常量.
什么类型的对象是self类方法中的对象?
例:
+ (void)test {
NSLog(@"class self: %@", self);
}
Run Code Online (Sandbox Code Playgroud)
self类方法中的对象是类的完全初始化对象还是只有重要元数据的类包装器对象?
最好的祝福