If you are willing to use private API (will not be accepted by Apple), there is a solution.
Use GSEventLockDevice in the GraphicsServices.framework
This solution works, but you won't be able to put your App on AppStore, it will only be OK for internal uses Apps
MORE ABOUT YOUR CODE :
[UIApplication sharedApplication].idleTimerDisabled = YES;
Is for prevent your device to lock after the Idle time set by user on his Settings.
NSDate *future = [NSDate dateWithTimeIntervalSinceNow: 0.06 ];
[NSThread sleepUntilDate:future];
Putting a Thread to sleep, has nothing to do with locking a device. You probably experienced an app Freeze for about 0.06 second when testing this...