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

本文关键字:运行 后台 线程 程序 自定义 会话状态 | 更新日期: 2023-09-27 18:28:59

我想在自定义会话状态提供程序实现中运行后台进程。这将每隔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
        }
    }

}