Я написал процесс в vb.net, который пишет несколько текстовых файлов на основе SQL-запросов. Я хотел бы поставить «временной разрыв» после или перед каждым методом, чтобы замедлить процесс. Может быть, как через минуту или две. Я чувствую, что это может быть решением проблемы, с которой я столкнулся с последним методом (текстовым файлом). Когда-нибудь и некоторое время я получу исключение, которое гласит: «ИСКЛЮЧЕНИЕ ЗАПИСАН: процесс не может получить доступ к файлу« D: \ ORG.TXT », потому что он используется другим процессом». Я думаю, что другие методы могут каким-то образом заблокировать это от запуска. Если кто-нибудь почувствует, что может быть лучшее решение, дайте мне знать.Временные разрывы между методами vb .net
-3
A
ответ
0
System.Threading.Thread.Sleep()
Однако, вы также можете создать рекурсивный метод, который пытается получить доступ к файлу, и если он не может, спит затем пытается снова. Вам нужно будет остановить его в какой-то момент, чтобы он не продолжался и продолжался вечно. (Psuedocode)
If trythefile()
do stuff with the file
Else
fail
End If
function trythefile()
try
attempts + 1
access the file
return true
catch
sleep for a bit
If attempts < 10
trythefile()
Else
return false
End if
end function
Смежные вопросы
- 1. Может ли Java-редактор Eclipse отформатироваться как .NET между методами?
- 2. Временные файлы .Net
- 3. Повторить временные исключения .Net
- 4. Временные интервалы между путями
- 5. Разница между методами класса и методами экземпляра?
- 6. .NET 4.0: Несоответствие именования параметров между выражениями и методами.
- 7. Неоднозначных между методами или свойствами в C# .NET
- 8. объектов между методами
- 9. Потеря modelattribute между методами
- 10. Передача массивов между методами
- 11. Обмен значениями между методами
- 12. Ambigious вызова между методами
- 13. Неоднозначность между методами
- 14. Передача информации между методами
- 15. Синхронизация между методами @async
- 16. Передача переменных между методами
- 17. ошибки пропуска между методами
- 18. Буферизация вывода между методами
- 19. C++ блокировка между методами
- 20. Разница между методами
- 21. Разница между методами журнала
- 22. Что делает || между методами?
- 23. Передача NSString между методами
- 24. Остановка между методами
- 25. Переменные между методами
- 26. Передача ArrayList между методами
- 27. Разница между методами HTTP
- 28. Разница между методами «батут»
- 29. VB. NET: System.NullReferenceException произошло
- 30. VB Net IsDBNull issue
Я прочитал ваш вопрос, как «что-то происходит между моими методами, что приводит к пространственно-временной континуум шалить». Вы не указали какой-либо код, поэтому мы не можем вам помочь с этой проблемой. То, что вы хотите, называется задержкой. Вставка задержки в ваш код НЕ является хорошим решением. Попытайтесь выяснить, почему возникает проблема, и устраните основную причину. – Neolisk
Я не уверен, что здесь происходит, так как @Mike Haff не включал код ... но у меня это случилось с сторонними дополнениями, которые делают работу над файлами и сообщают нам о том, что они сделаны, Фактически, они все еще держатся за файл и препятствуют дальнейшей обработке. –
Если ваш код структурирован таким образом, что возможно, что два потока могут попытаться записать в один и тот же файл одновременно, то одним из возможных решений является использование [SyncLock] (https://msdn.microsoft.com/en-us /library/3a86s51t%28v=vs.100%29.aspx). Добавление задержек - ужасная идея, как говорит @Neolisk и, вероятно, вызовет у вас больше проблем, чем они, по-видимому, вылечат. –