You will need to store the Activity object that is returned from BeginActivity
somewhere:
NSObject myActivity;
const string myReason = "Hacking the planet";
Then when you want to prevent app nap from occuring:
// Prevent auto-sleeping
myActivity = new NSProcessInfo().BeginActivity(NSActivityOptions.IdleSystemSleepDisabled|NSActivityOptions.SuddenTerminationDisabled, myReason);
There are lots of combinations of NSActivityOptions that you can use depending upon your application requirements.
And when you are done with your processing:
// End the battery draining activty
new NSProcessInfo().EndActivity(myActivity);