0

如果您根据提供给静态方法的参数在静态方法中检索实例变量,如果不同调用者同时调用静态方法,是否可能会踩到实例变量?我正在调用的方法在下面定义,我想知道实例变量发票是否可能被损坏......任何澄清将不胜感激!

public static void SendInvoiceReceipt(int invoiceId, string recipientEmailAddress)
{
    var invoice = ObjectFactory.GetInvoiceDAL().GetInvoiceByInvoiceId(invoiceId);

    var htmlBody = BuildHtmlInvoiceReceipt(invoice);
    var txtBody = BuildTextInvoiceReceipt(invoice);

    UtilitiesManager.Emails.EmailUtil.Send(SiteConfigUtilities.GetSMTPServer(),
            "referral@realtors.net", recipientEmailAddress, String.Empty,
            "Payment Receipt", htmlBody, txtBody);
}
4

1 回答 1

6

invoice是一个局部变量(不是“实例变量”)。它是在栈上分配的,每个线程都有自己的栈。其他线程无法影响它。

于 2010-06-28T13:55:13.380 回答