Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在自定义会话状态提供程序中运行后台线程_C#_Asp.net_Multithreading_Asp.net Mvc 4_Session State - Fatal编程技术网

C# 在自定义会话状态提供程序中运行后台线程

C# 在自定义会话状态提供程序中运行后台线程,c#,asp.net,multithreading,asp.net-mvc-4,session-state,C#,Asp.net,Multithreading,Asp.net Mvc 4,Session State,我想在自定义会话状态提供程序实现中运行后台进程。这将每X分钟执行一些自定义操作,以检查提供程序的状态。 据我所知: 自定义提供程序的initialize方法应调用一次。这是在自定义提供程序的初始化过程中完成的。 因此,我可以在那里运行我的后台进程,该进程将一直运行,直到该进程在应用程序池中被回收(并将再次运行)。 因此,在阅读了线程实现之后,我可以使用后台线程似乎是最好的选择 您如何看待这个实现?你认为有更好的办法吗 关于,最后,我能够改进我在问题中想知道的解决方案 运行要在实现SessionS

我想在自定义会话状态提供程序实现中运行后台进程。这将每X分钟执行一些自定义操作,以检查提供程序的状态。 据我所知: 自定义提供程序的initialize方法应调用一次。这是在自定义提供程序的初始化过程中完成的。 因此,我可以在那里运行我的后台进程,该进程将一直运行,直到该进程在应用程序池中被回收(并将再次运行)。 因此,在阅读了线程实现之后,我可以使用后台线程似乎是最好的选择

您如何看待这个实现?你认为有更好的办法吗


关于,

最后,我能够改进我在问题中想知道的解决方案

运行要在实现SessionStateStoreProviderBase的类的Initialize方法中运行的后台线程:

public sealed class CustomSessionProvider : SessionStateStoreProviderBase
{


    // Initialize the provider
    public override void Initialize(string name, NameValueCollection config)
    {
        try
        {
            Thread t = new Thread(() => MethodName(parameter1, parameter2));
            t.Start();
        }
        catch (Exception e) 
        { 
            //Exception executing the thread

        }
    }

}

你能告诉我们你做了什么吗?