Požadavky: Metoda NET/C# musí použít System.Diagnostics.Process k volání jiných programových operací, pokud jde o program třetí stranyStálý nedostatek reakce může vést k metodám, které vždy čekajíProtože program třetí strany může vyžadovat zadání příkazu, metoda neodpoví, ať čeká jakkoliv dlouho, což znamená, že program nebude schopen pokračovat v běžném spuštění.
Pokud jde o stanovení časového limitu pro nějakou metodu, měli byste zvážit několik věcí:
- Metoda vypršela, ale může být stále vynucována
- Pokud časový limit bude pokračovat, zaplní to vlákno? Plná paměť? Plný procesor?
- Metoda vypršela, jak elegantně ukončit její provádění
Na internetu jsem viděl nějaký kód, například o časovém limitu úkolů, i když efekt byl dosažen, aleÚkol bude pokračovat v plnění, což může neustále spotřebovávat zdroje, což způsobuje pád programu.
Kód je následující:
Recenzně se věnujeme tématu, tento článek stanovuje časový limit pro tuto metoduCílené a nevhodné pro všechny metody, jen abych poskytl představu, prosím upravte ji podle své skutečné situace.
Naše metoda volá System.Diagnostics.Process k spuštění programu třetí strany, a jakmile metoda vyprší, chceme ukončit proces, který ukončí program třetí strany! Kód je následující:
(Konec)
|