0

好吧,我采用了最初在这里 和后来在这里制作的 iOS stumbler 应用程序, 并添加了一大堆功能,例如按用户定义的时间间隔进行实时扫描等。好吧,除了实际扫描到观点。由于该工具的性质,它只能在越狱手机上运行,​​因此也不能真正在模拟器上运行(好吧,我用它来测试 GUI 和其他东西,但不是实际扫描。)我的问题是扫描仪有通常运行 3-4 分钟,我得到一个EXC_BAD_ACCESS(code=2, address=0x....) 我已经阅读了有关使用僵尸等的各种线程,并且我在设置下启用了它,但无济于事。我当前的设置是:xcode 4.6 在 iphone 4 5.1.1 和 4s 6.1.1 以及另一个朋友在 4s 5.1.1 上运行,结果相同。

除了我自己调用的日志外,没有控制台输出,这表明在扫描循环结束后,某些原因导致了崩溃。这是扫描循环:

-(void)collectData{
if([[RefresherSingleton sharedRefresher].refresh isEqualToString:@"NO"]){
    return;
}
LogInfo(@"Current ESSID:%@",ESSID);
network=[self getNetwork:ESSID];
NSNumber *RSSI=[network objectForKey:@"RSSI"];
NSNumber *noise=[network objectForKey:@"NOISE"];
NSString *time=[dateFormatter stringFromDate:[NSDate date]];
if(!RSSI)
    RSSI=[NSNumber numberWithInt:666];
if(!noise)
    noise=[NSNumber numberWithInt:666];
if(!time)
    time=@"";
NSDictionary *data = [[NSDictionary alloc] initWithObjectsAndKeys:time,@"Time",RSSI, @"RSSI", noise, @"Noise",BSSID,@"BSSID",channel,@"Channel", nil];
[[DataCollection sharedDataCollection].dataCollection addObject:data];
LogInfo(@"%@",data);
//pass the data directly to processData
[self processData];

int delay=[[NSUserDefaults standardUserDefaults] stringForKey:@"interval_preference"].integerValue;
LogInfo(@"Delay set to %d",delay);
if(delay>1)
    [self performSelector:@selector(collectData) withObject:nil afterDelay:delay-1];
else
    [self performSelector:@selector(collectData) withObject:nil afterDelay:0];
LogInfo(@"About to loop");
[[NSRunLoop currentRunLoop] run];
LogInfo(@"Should have looped");

}

我在代码等上使用ARC。循环运行了很长一段时间,然后就崩溃了。关于如何缩小范围的任何建议?这也是iphone崩溃日志:

Incident Identifier: D76B253D-4151-4B59-8C67-3D31D8189CD2  
CrashReporter Key:   0703081b8fe87291ddb896a2ba4e4dfc51a354d4  
Hardware Model:      iPhone3,1  
Process:         WifiTool [4957]  
Path:            /Applications/WifiTool.app/WifiTool  
Identifier:      WifiTool  
Version:         ??? (???)  
Code Type:       ARM (Native)  
Parent Process:  launchd [1]  

Date/Time:       2013-03-01 19:09:45.494 +0900  
OS Version:      iPhone OS 5.1.1 (9B206)  
Report Version:  104  

Exception Type:  EXC_BAD_ACCESS (SIGBUS)  
Exception Codes: KERN_PROTECTION_FAILURE at 0x002bc464  
Crashed Thread:  3  

Thread 0 name:  Dispatch queue: com.apple.main-thread  
Thread 0:  
0   libsystem_kernel.dylib          0x31a00004 mach_msg_trap + 20  
1   libsystem_kernel.dylib          0x31a001fa mach_msg + 50  
2   CoreFoundation                  0x3782d3ec __CFRunLoopServiceMachPort + 120  
3   CoreFoundation                  0x3782c0ea __CFRunLoopRun + 818  
4   CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294  
5   CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98  
6   GraphicsServices                0x33f6e432 GSEventRunModal + 130  
7   UIKit                           0x3155bcce UIApplicationMain + 1074  
8   WifiTool                        0x000d4862 0xd3000 + 6242  
9   WifiTool                        0x000d47e8 0xd3000 + 6120  

Thread 1 name:  Dispatch queue: com.apple.libdispatch-manager  
Thread 1:  
0   libsystem_kernel.dylib          0x31a003a8 kevent + 24  
1   libdispatch.dylib               0x30985ea4 _dispatch_mgr_invoke + 708  
2   libdispatch.dylib               0x30985bc2 _dispatch_mgr_thread + 30  

Thread 2 name:  WebThread  
Thread 2:  
0   libsystem_kernel.dylib          0x31a00004 mach_msg_trap + 20  
1   libsystem_kernel.dylib          0x31a001fa mach_msg + 50  
2   CoreFoundation                  0x3782d3ec __CFRunLoopServiceMachPort + 120  
3   CoreFoundation                  0x3782c124 __CFRunLoopRun + 876  
4   CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294  
5   CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98  
6   WebCore                         0x33158c9c _ZL12RunWebThreadPv + 396  
7   libsystem_c.dylib               0x340ce72e _pthread_start + 314  
8   libsystem_c.dylib               0x340ce5e8 thread_start + 0  

Thread 3 Crashed:  
0   CoreGraphics                        0x352bf554 argb32_mark + 80  
1   libRIP.A.dylib                  0x37b3e22a ripl_BltGlyph + 3358  
2   libRIP.A.dylib                  0x37b33ab2 ripc_DrawGlyphs + 1862  
3   CoreGraphics                    0x352bb342 CGContextDelegateDrawGlyphs + 38  
4   CoreGraphics                    0x352bb12a draw_glyphs + 390  
5   CoreGraphics                    0x352badfa CGContextShowGlyphsWithAdvances + 374  
6   WebCore                         0x330b46a0   _ZN7WebCoreL22showGlyphsWithAdvancesERKNS_10FloatPointEPKNS_14SimpleFontDataEP9CGContextPKtPK6CGSizem + 1912
7   WebCore                         0x330b3e04 WebCore::Font::drawGlyphs(WebCore::GraphicsContext*, WebCore::SimpleFontData const*, WebCore::GlyphBuffer const&, int, int, WebCore::FloatPoint const&, bool) const + 1072
8   WebCore                         0x330b369a WebCore::Font::drawSimpleText(WebCore::GraphicsContext*, WebCore::TextRun const&, WebCore::FloatPoint const&, int, int) const + 342
9   WebCore                         0x330b3518 WebCore::Font::drawText(WebCore::GraphicsContext*, WebCore::TextRun const&, WebCore::FloatPoint const&, int, int) const + 128
10  WebKit                          0x35ddb294 _ZL11drawAtPointPKtiRKN7WebCore10FloatPointERKNS1_4FontEPNS1_15GraphicsContextEbPNS1_10BidiStatusEi + 204
11  WebKit                          0x35ddb5e0 -[NSString(WebStringDrawing) __web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:includeEmoji:measureOnly:renderedStringOut:drawUnderline:] + 776
12  WebKit                          0x35d54d90 -[NSString(WebStringDrawing) __web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:includeEmoji:measureOnly:renderedStringOut:] + 84
13  WebKit                          0x35d54d2c -[NSString(WebStringDrawing) __web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:includeEmoji:measureOnly:] + 76
14  WebKit                          0x35d54cd0 -[NSString(WebStringDrawing) _web_drawAtPoint:forWidth:withFont:ellipsis:letterSpacing:includeEmoji:] + 72
15  UIKit                           0x3153dace -[NSString(UIStringDrawing) drawAtPoint:forWidth:withFont:lineBreakMode:letterSpacing:includeEmoji:] + 154
16  UIKit                           0x3153d454 -[UILabel _drawTextInRect:baselineCalculationOnly:] + 1848
17  UIKit                           0x3153c3de -[UILabel drawTextInRect:] + 374
18  UIKit                           0x3153c25e -[UILabel drawRect:] + 66
19  UIKit                           0x3153c15e -[UIView(CALayerDelegate) drawLayer:inContext:] + 270
20  QuartzCore                      0x379834de -[CALayer drawInContext:] + 110
21  QuartzCore                      0x37982b38 CABackingStoreUpdate_ + 1776
22  QuartzCore                      0x3798232e CA::Layer::display_() + 950
23  QuartzCore                      0x37981f5a CA::Layer::display() + 122
24  QuartzCore                      0x37981e9c CA::Layer::display_if_needed(CA::Transaction*) + 168
25  QuartzCore                      0x37981844 CA::Context::commit_transaction(CA::Transaction*) + 228
26  QuartzCore                      0x37981578 CA::Transaction::commit() + 308
27  QuartzCore                      0x379794b2 CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 50
28  CoreFoundation                  0x3782db14 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 12
29  CoreFoundation                  0x3782bd50 __CFRunLoopDoObservers + 252
30  CoreFoundation                  0x3782c0aa __CFRunLoopRun + 754
31  CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
32  CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
33  Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
34  Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
35  WifiTool                        0x000d65a2 0xd3000 + 13730
36  Foundation                      0x380ca92c __NSFireDelayedPerform + 408
37  CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
38  CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
39  CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
40  CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
41  CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
42  Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
43  Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
44  WifiTool                        0x000d65a2 0xd3000 + 13730
45  Foundation                      0x380ca92c __NSFireDelayedPerform + 408
46  CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
47  CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
48  CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
49  CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
50  CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
51  Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
52  Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
53  WifiTool                        0x000d65a2 0xd3000 + 13730
54  Foundation                      0x380ca92c __NSFireDelayedPerform + 408
55  CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
56  CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
57  CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
58  CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
59  CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
60  Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
61  Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
62  WifiTool                        0x000d65a2 0xd3000 + 13730
63  Foundation                      0x380ca92c __NSFireDelayedPerform + 408
64  CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
65  CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
66  CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
67  CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
68  CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
69  Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
70  Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
71  WifiTool                        0x000d65a2 0xd3000 + 13730
72  Foundation                      0x380ca92c __NSFireDelayedPerform + 408
73  CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
74  CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
75  CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
76  CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
77  CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
78  Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
79  Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
80  WifiTool                        0x000d65a2 0xd3000 + 13730
81  Foundation                      0x380ca92c __NSFireDelayedPerform + 408
82  CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
83  CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
84  CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
85  CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
86  CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
87  Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
88  Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
89  WifiTool                        0x000d65a2 0xd3000 + 13730
90  Foundation                      0x380ca92c __NSFireDelayedPerform + 408
91  CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
92  CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
93  CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
94  CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
95  CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
96  Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
97  Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
98  WifiTool                        0x000d65a2 0xd3000 + 13730
99  Foundation                      0x380ca92c __NSFireDelayedPerform + 408
100 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
101 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
102 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
103 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
104 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
105 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
106 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
107 WifiTool                        0x000d65a2 0xd3000 + 13730
108 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
109 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
110 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
111 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
112 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
113 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
114 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
115 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
116 WifiTool                        0x000d65a2 0xd3000 + 13730
117 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
118 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
119 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
120 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
121 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
122 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
123 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
124 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
125 WifiTool                        0x000d65a2 0xd3000 + 13730
126 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
127 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
128 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
129 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
130 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
131 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
132 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
133 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
134 WifiTool                        0x000d65a2 0xd3000 + 13730
135 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
136 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
137 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
138 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
139 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
140 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
141 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
142 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
143 WifiTool                        0x000d65a2 0xd3000 + 13730
144 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
145 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
146 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
147 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
148 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
149 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
150 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
151 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
152 WifiTool                        0x000d65a2 0xd3000 + 13730
153 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
154 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
155 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
156 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
157 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
158 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
159 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
160 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
161 WifiTool                        0x000d65a2 0xd3000 + 13730
162 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
163 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
164 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
165 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
166 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
167 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
168 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
169 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
170 WifiTool                        0x000d65a2 0xd3000 + 13730
171 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
172 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
173 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
174 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
175 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
176 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
177 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
178 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
179 WifiTool                        0x000d65a2 0xd3000 + 13730
180 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
181 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
182 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
183 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
184 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
185 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
186 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
187 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
188 WifiTool                        0x000d65a2 0xd3000 + 13730
189 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
190 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
191 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
192 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
193 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
194 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
195 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
196 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
197 WifiTool                        0x000d65a2 0xd3000 + 13730
198 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
199 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
200 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
201 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
202 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
203 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
204 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
205 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
206 WifiTool                        0x000d65a2 0xd3000 + 13730
207 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
208 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
209 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
210 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
211 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
212 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
213 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
214 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
215 WifiTool                        0x000d65a2 0xd3000 + 13730
216 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
217 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
218 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
219 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
220 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
221 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
222 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
223 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
224 WifiTool                        0x000d65a2 0xd3000 + 13730
225 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
226 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
227 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
228 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
229 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
230 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
231 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
232 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
233 WifiTool                        0x000d65a2 0xd3000 + 13730
234 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
235 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
236 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
237 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
238 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
239 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
240 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
241 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
242 WifiTool                        0x000d65a2 0xd3000 + 13730
243 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
244 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
245 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
246 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
247 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
248 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
249 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
250 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
251 WifiTool                        0x000d65a2 0xd3000 + 13730
252 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
253 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8
254 CoreFoundation                  0x3782d692 __CFRunLoopDoTimer + 358
255 CoreFoundation                  0x3782c268 __CFRunLoopRun + 1200
256 CoreFoundation                  0x377af49e CFRunLoopRunSpecific + 294
257 CoreFoundation                  0x377af366 CFRunLoopRunInMode + 98
258 Foundation                      0x38033b6e -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
259 Foundation                      0x3804d51c -[NSRunLoop(NSRunLoop) run] + 72
260 WifiTool                        0x000d65a2 0xd3000 + 13730
261 Foundation                      0x380ca92c __NSFireDelayedPerform + 408
262 CoreFoundation                  0x3782da2c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 8


Thread 3 crashed with ARM Thread State:
    r0: 0x3f474030    r1: 0x0000000b      r2: 0x00010402      r3: 0x00000000
    r4: 0x00000001    r5: 0x1d024448      r6: 0x1d024448      r7: 0x002bd4fc
    r8: 0x1d02449c    r9: 0x0000001c     r10: 0x1c5e6030     r11: 0x1c5e6074
    ip: 0x00345020    sp: 0x002bc428      lr: 0x00000000      pc: 0x352bf554
  cpsr: 0x40000030

Binary Images:
   0xd3000 -   0x106fff +WifiTool armv7  <5c6af73f9cba3746a645c602ba08b3b3> /Applications/WifiTool.app/WifiTool

我不得不从日志中剪掉很多,因为它太长了,但如果需要我会链接它

4

2 回答 2

0

看起来可能是堆栈溢出;你已经发生了无限(间接)递归。[[NSRunLoop currentRunLoop] run];正在调用您的方法,该方法调用[[NSRunLoop currentRunLoop] run];等。尝试[[NSRunLoop currentRunLoop] run];从您的方法中删除对的调用。(只需在方法结束时返回,无论如何它都会返回到运行循环。)

于 2013-03-01T12:20:37.047 回答
0

一旦我更改为使用 GCD 调用而不是使用递归的循环,应用程序就一直很稳定:) 这是我使用的:一旦按下开始按钮,从 GUI 中 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void){ [[ScannerSingleton sharedScanner]scanCurrentNetwork]; }); 调用扫描方法,该方法一直运行直到按下停止按钮:)

一旦我修复了这个问题并在应用程序的其他几个区域实施了 GCD,它就会变得更加流畅:D

于 2013-03-06T02:32:55.807 回答