Further to my previous email, you'll need the following class to run my code:<div><br></div><div><div>//</div><div>//  TimerInvokee.m</div><div>//  openRTSP</div><div>//</div><div>//  Created by Jon Burgess on 22/10/10.</div>
<div>//  Copyright Jon Burgess. All rights reserved.</div><div>//</div><div>  </div><div>#import "TimerInvokee.h"</div><div>  </div><div>@implementation TimerInvokee</div><div>  </div><div>- (void)execute:(TaskFunc*)proc clientData:(void*)clientData invoker:(NSTimer*)invoker</div>
<div>{</div><div>//  NSLog(@"Invoking task for timer: %u", invoker);</div><div>    proc(clientData);</div><div>     </div><div>    // We did an extra retain when scheduling, so release equally here now that the timer</div>
<div>    // has fired to avoid leak.</div><div>    [invoker release];</div><div>}</div><div>  </div><div>@end</div><div><br></div><div><br></div><div><div>//</div><div>//  TimerInvokee.m</div><div>//  openRTSP</div><div>//</div>
<div>//  Created by Jon Burgess on 22/10/10.</div><div>//  Copyright 2010 Jon Burgess. All rights reserved.</div><div>//</div><div>  </div><div>#import "TimerInvokee.h"</div><div>  </div><div>@implementation TimerInvokee</div>
<div>  </div><div>- (void)execute:(TaskFunc*)proc clientData:(void*)clientData invoker:(NSTimer*)invoker</div><div>{</div><div>//  NSLog(@"Invoking task for timer: %u", invoker);</div><div>    proc(clientData);</div>
<div>     </div><div>    // We did an extra retain when scheduling, so release equally here now that the timer</div><div>    // has fired to avoid leak.</div><div>    [invoker release];</div><div>}</div><div>  </div><div>
@end</div></div><div><br></div></div>