Как завершить код, который занимает много времени в vb.net? - PullRequest
0 голосов
/ 25 октября 2010

Как завершить функцию / код (не всю страницу), когда это занимает некоторое время, например, более 1 секунды?

Если код> 1 секунда, то завершить код ....

Я нашел команду " Server.ScriptTimeou ", но она останавливает всю страницу вместо одной команды.

Ответы [ 2 ]

1 голос
/ 25 октября 2010

Вы можете запустить свою функцию в фоновом режиме и запустить таймер одновременно.Затем прервите процесс, если он длится более 1 секунды.

Если вы хотите запустить на переднем плане, то у вас, вероятно, есть цикл, который занимает много времени.Перед началом работы сохраните текущее время.Затем, где-то в середине цикла, сравните сохраненное время с текущим временем.Когда он достигнет одной секунды, вырвитесь из цикла.

0 голосов
/ 25 октября 2010

Решение будет зависеть от того, что вы делаете. Если вы вызываете одну функцию, которую вы не можете контролировать и которая иногда может выполняться дольше, чем 1 секунда или около того, вы в значительной степени застряли с необходимостью запустить эту функцию в фоновом потоке, а затем завершить поток, если он выполняется длинный.

Если вы на самом деле выполняете длинный цикл или какой-то другой код, которым вы действительно управляете, вы можете просто записать текущее время перед запуском процесса, а в цикле проверить, выполняется ли долго, и если это так, выйдите из цикла.

Просто зависит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...