This is probably done best as a new thread as it's a new question.
The answer is of course yes. In your .NET application, when you call Run_Batch_Job, you can start a timer. Using Get_BatchJob_Status, you can determine if the job is still running. If your timer breaches a set threshold, you can raise an email from your .NET application.
It is also possible to write a loop in SAP Data Services that does much the same thing.
Alexei