Time Limits for Jobs

It should be possible to set a time limit for jobs. For example, a job should be configurable to run run for 8 hours. If the job exceeds 8 hours, there should be an option to send a warning by email and/or stop the job.