I have a Class ReceiveFaxPrintHelper in c# that i implemented as Sealed. I have also implemented this as Singleton. I have a method PrintStoredFaxes defined in this class, which i protect using a lock.
The question i have is if i change ReceiveFaxPrintHelper from class to struct, does this affect my threading? Ndepend suggests me to change this to a structure instead of class.
public sealed class ReceiveFaxPrintHelper
{
    private static AutoResetEvent mJobCompleted = new AutoResetEvent(false);
    private bool mPrintStoredFaxesInProgress = false;
    private object mLockPrint = new object();
    private const string mClassName = "ReceiveFaxPrintHelper";
   /// <summary>
    /// Function that prints the Stored Faxes
    /// </summary>
    /// <param name="o">completing the delegate message signature</param>
    public void PrintStoredFaxes(object o)
    {
        lock (mLockPrint)
        {
I use this like this:
ThreadPool.QueueUserWorkItem(new WaitCallback(ReceiveFaxPrintHelper.Instance.PrintStoredFaxes));
 
     
     
    