While you guys are correct, the method selector is wrong, your solution will not help because the selector for detachNewThreadSelector must take only one argument.
The withObject parameter will be passed to your thread method as its one an only parameter.
If your threaded method wants to receive a start and end time, then the normal way to do this would be with an NSDictionary, something like:
[NSThread detachNewThreadSelector:@selector(getJSON:)
toTarget:self
withObject:[NSDictionary dictionaryWithObjectsAndKeys:
startTime, @"startTime",
endTime, @"endTime",
nil]];
Then the thread method would be
- (void) getJSON: (NSDictionary*) parameters
{
NSDate* startTime = [parameters objectForKey:@"startTime"];
NSDate* endTime = [parameters objectForKey:@"endTime"];
...
}