Thanks all for the input. I'll take Scott's and Gregory's advice to
not retain the timer. I've seen this advocated before, but always felt
uneasy about not retaining my pointers. It just goes against all I
ever learned about Cocoa.

In this particular case, though, I might just as well get rid of the
timer altogether and go for NSObject's
performSelector:afterDelay:/cancelSelector: instead. Jeff's
enlightening (and frightening!) discussion about implicit retain
cycles makes me want to stay as far away from NSTimers as possible.

And no, this should not be a multihreading issue. The timer methods
are only called on the main thread, where the target (self) is my main
controller. Full backtrace below:

Process:         MyApp [1333]
Path:            /Users/user/Desktop/MyApp.app/Contents/MacOS/MyApp
Identifier:      MyApp
Version:         1.0 (1.0)
Code Type:       X86 (Native)
Parent Process:  launchd [177]

Date/Time:       2010-09-21 11:28:57.566 -0600
OS Version:      Mac OS X 10.6.4 (10F569)
Report Version:  6

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000
Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Thread 0 Crashed:  Dispatch queue: com.apple.main-thread
0   com.apple.CoreFoundation            0x91d6cc94 CFRelease + 196
1   com.apple.CoreFoundation            0x91de37c1
__CFRunLoopTimerDeallocate + 33
2   com.apple.CoreFoundation            0x91d6ce31 _CFRelease + 353
3   MyApp                       0x0000878a 0x1000 + 30602
4   MyApp                       0x00011da6 0x1000 + 69030
5   MyApp                       0x000204d8 0x1000 + 128216
6   com.apple.AppKit                    0x97792f1e -[NSApplication
sendAction:to:from:] + 112
7   com.apple.AppKit                    0x97872699 -[NSControl
sendAction:to:] + 108
8   com.apple.AppKit                    0x9786e146 -[NSCell
_sendActionFrom:] + 169
9   com.apple.AppKit                    0x9786e094 -[NSSegmentedCell
_sendActionFrom:] + 70
10  com.apple.AppKit                    0x9786d43d -[NSCell
trackMouse:inRect:ofView:untilMouseUp:] + 1808
11  com.apple.AppKit                    0x9786c9f7 -[NSSegmentedCell
trackMouse:inRect:ofView:untilMouseUp:] + 1223
12  com.apple.AppKit                    0x9786be93 -[NSControl mouseDown:] + 812
13  com.apple.AppKit                    0x97869e9c -[NSWindow sendEvent:] + 5549
14  com.apple.AppKit                    0x97782aff -[NSApplication
sendEvent:] + 6431
15  com.apple.AppKit                    0x977165bb -[NSApplication run] + 917
16  com.apple.AppKit                    0x9770e5ed NSApplicationMain + 574
17  MyApp                       0x00002486 0x1000 + 5254

Thread 1:  Dispatch queue: com.apple.libdispatch-manager
0   libSystem.B.dylib                   0x9875a942 kevent + 10
1   libSystem.B.dylib                   0x9875b05c _dispatch_mgr_invoke + 215
2   libSystem.B.dylib                   0x9875a519 _dispatch_queue_invoke + 163
3   libSystem.B.dylib                   0x9875a2be
_dispatch_worker_thread2 + 240
4   libSystem.B.dylib                   0x98759d41 _pthread_wqthread + 390
5   libSystem.B.dylib                   0x98759b86 start_wqthread + 30

Thread 2:
0   libSystem.B.dylib                   0x98762066 __semwait_signal + 10
1   libSystem.B.dylib                   0x98761d22 _pthread_cond_wait + 1191
2   libSystem.B.dylib                   0x987639b8
pthread_cond_wait$UNIX2003 + 73
3   com.apple.CoreVideo                 0x992e286a
CVDisplayLink::runIOThread() + 1016
4   com.apple.CoreVideo                 0x992e2456 startIOThread(void*) + 156
5   libSystem.B.dylib                   0x9876181d _pthread_start + 345
6   libSystem.B.dylib                   0x987616a2 thread_start + 34

Thread 3:
0   libSystem.B.dylib                   0x987340fa mach_msg_trap + 10
1   libSystem.B.dylib                   0x98734867 mach_msg + 68
2   com.apple.CoreFoundation            0x91d9cfaf __CFRunLoopRun + 2079
3   com.apple.CoreFoundation            0x91d9c094 CFRunLoopRunSpecific + 452
4   com.apple.CoreFoundation            0x91d9bec1 CFRunLoopRunInMode + 97
5   com.apple.Foundation                0x944b442c
+[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] +
329
6   com.apple.Foundation                0x9447b8d4 -[NSThread main] + 45
7   com.apple.Foundation                0x9447b884 __NSThread__main__ + 1499
8   libSystem.B.dylib                   0x9876181d _pthread_start + 345
9   libSystem.B.dylib                   0x987616a2 thread_start + 34

Thread 4:
0   libSystem.B.dylib                   0x98753086 select$DARWIN_EXTSN + 10
1   com.apple.CoreFoundation            0x91ddc80d __CFSocketManager + 1085
2   libSystem.B.dylib                   0x9876181d _pthread_start + 345
3   libSystem.B.dylib                   0x987616a2 thread_start + 34

Thread 5:
0   libSystem.B.dylib                   0x987599d2 __workq_kernreturn + 10
1   libSystem.B.dylib                   0x98759f68 _pthread_wqthread + 941
2   libSystem.B.dylib                   0x98759b86 start_wqthread + 30

Thread 6:
0   libSystem.B.dylib                   0x987599d2 __workq_kernreturn + 10
1   libSystem.B.dylib                   0x98759f68 _pthread_wqthread + 941
2   libSystem.B.dylib                   0x98759b86 start_wqthread + 30

Thread 7:
0   libSystem.B.dylib                   0x987599d2 __workq_kernreturn + 10
1   libSystem.B.dylib                   0x98759f68 _pthread_wqthread + 941
2   libSystem.B.dylib                   0x98759b86 start_wqthread + 30

Thread 8:
0   libSystem.B.dylib                   0x9873415a
semaphore_timedwait_signal_trap + 10
1   libSystem.B.dylib                   0x98761ca5 _pthread_cond_wait + 1066
2   libSystem.B.dylib                   0x98790848
pthread_cond_timedwait_relative_np + 47
3   ...ple.CoreServices.CarbonCore      0x948a03b5
TSWaitOnConditionTimedRelative + 242
4   ...ple.CoreServices.CarbonCore      0x948a00f3 TSWaitOnSemaphoreCommon + 511
5   ...ickTimeComponents.component      0x953398bd
ReadSchedulerThreadEntryPoint + 4698
6   libSystem.B.dylib                   0x9876181d _pthread_start + 345
7   libSystem.B.dylib                   0x987616a2 thread_start + 34

Thread 9:
0   libSystem.B.dylib                   0x9873415a
semaphore_timedwait_signal_trap + 10
1   libSystem.B.dylib                   0x98761ca5 _pthread_cond_wait + 1066
2   libSystem.B.dylib                   0x98790848
pthread_cond_timedwait_relative_np + 47
3   ...ple.CoreServices.CarbonCore      0x948a03b5
TSWaitOnConditionTimedRelative + 242
4   ...ple.CoreServices.CarbonCore      0x948a00f3 TSWaitOnSemaphoreCommon + 511
5   ...ple.CoreServices.CarbonCore      0x948fa900 AIOFileThread(void*) + 1127
6   libSystem.B.dylib                   0x9876181d _pthread_start + 345
7   libSystem.B.dylib                   0x987616a2 thread_start + 34

Thread 10:
0   com.apple.framework.IOKit           0x9244a7f7 iokit_user_client_trap + 7
1   com.apple.audio.CoreAudio           0x969f0b86
IOA_HWDevice::WriteOutputData(unsigned long, unsigned long, unsigned
long, unsigned long long) + 108
2   com.apple.audio.CoreAudio           0x969f09a2
IOA_SingleDevice::WriteOutputData(AudioTimeStamp const&, unsigned
long) + 422
3   com.apple.audio.CoreAudio           0x969f0285
IOA_Device::CallIOProcs(AudioTimeStamp const&, AudioTimeStamp const&,
AudioTimeStamp const&) + 573
4   com.apple.audio.CoreAudio           0x969effb6
HP_IOThread::PerformIO(AudioTimeStamp const&, double) + 620
5   com.apple.audio.CoreAudio           0x969ed39a
HP_IOThread::WorkLoop() + 2506
6   com.apple.audio.CoreAudio           0x969ec9cb
HP_IOThread::ThreadEntry(HP_IOThread*) + 17
7   com.apple.audio.CoreAudio           0x969ec8e2
CAPThread::Entry(CAPThread*) + 140
8   libSystem.B.dylib                   0x9876181d _pthread_start + 345
9   libSystem.B.dylib                   0x987616a2 thread_start + 34

Thread 11:
0   libSystem.B.dylib                   0x98734136 semaphore_wait_trap + 10
1   ...ickTimeComponents.component      0x959fefaa QTThreadWaitSignal + 107
2   ...ickTimeComponents.component      0x953c3bfd audioprepThreadEntry + 68
3   ...ickTimeComponents.component      0x959fef24 start_thread + 54
4   libSystem.B.dylib                   0x9876181d _pthread_start + 345
5   libSystem.B.dylib                   0x987616a2 thread_start + 34

Thread 0 crashed with X86 Thread State (32-bit):
 eax: 0x00000000  ebx: 0x91d6cbdd  ecx: 0x00000000  edx: 0xa0ac74c0
 edi: 0x170a4ea0  esi: 0x00000000  ebp: 0xbffff198  esp: 0xbffff180
  ss: 0x0000001f  efl: 0x00000246  eip: 0x91d6cc94   cs: 0x00000017
  ds: 0x0000001f   es: 0x0000001f   fs: 0x00000000   gs: 0x00000037
 cr2: 0x537d6000
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to