public async Task GenerateLandingFlights() { for (int i = 0; i < 2; i++) { AirportService.Plane plane = _planeManager.GetPlaneForLanding(); if (plane != null) { AirportService.Flight flight = new AirportService.Flight() { Plane = plane, Flow = Flow.LandStatus, FlightNumber = flightNumber++ }; int minutesToLand = generateMinutes.Next(2, 10) * DURATION; Timer timer = new Timer(minutesToLand); timer.Start(); timer.Elapsed += (sender, e) => TimerElapsedFlightNeedsToLand(sender, e, flight); } } }
private void TimerElapsedFlightNeedsToLand(object sender, ElapsedEventArgs e, AirportService.Flight flight) { Timer timer = (Timer)sender; timer.Stop(); //_controlTower.FlightsAskToLand(flightNumber); _client.FlightAskToLand(flight); //in the meen time //Console.WriteLine($"flight number {flightNumber} ask to land"); //} }