c# double process waiting