我的应用程序涉及来自不同来源(例如Outlook和IMAP邮箱)的电子邮件。在对它们进行解析之前,我将它们写入临时目录(将它们保留在内存中不是一个选项)。在解析过程中,我可能会将附件写入临时目录(例如,如果它们太大而无法保留在内存中或者进行全文提取)。
但在实际使用中,有两件事情看起来非常奇怪,但可以追溯到病毒扫描器的行为:
1. 我有时无法打开我自己几毫秒前写的文件。它们显然被病毒扫描器锁定以确保它们是干净的。我会收到一个异常。 2. 如果病毒扫描器认为某些文件存在危险,它会在某个时间点删除这些文件。
为了应对这种行为,我编写了一些方法,如果打开失败则重试,或者检查文件是否存在,但我无法在应用程序的每个部分(例如过滤器等第三方代码)中使用它们,所以情况有所改善,但并不完美,并且我的源代码在某些地方看起来很丑陋。
你如何应对病毒扫描器?
但在实际使用中,有两件事情看起来非常奇怪,但可以追溯到病毒扫描器的行为:
1. 我有时无法打开我自己几毫秒前写的文件。它们显然被病毒扫描器锁定以确保它们是干净的。我会收到一个异常。 2. 如果病毒扫描器认为某些文件存在危险,它会在某个时间点删除这些文件。
为了应对这种行为,我编写了一些方法,如果打开失败则重试,或者检查文件是否存在,但我无法在应用程序的每个部分(例如过滤器等第三方代码)中使用它们,所以情况有所改善,但并不完美,并且我的源代码在某些地方看起来很丑陋。
你如何应对病毒扫描器?