⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 infosumupdater.cs

📁 前台:asp.net;后台: sql server 一个功能完善的BBS系统源码。
💻 CS
字号:
using System;
using System.Threading;
using Stella.SQLServerDAL;
using Stella.Model;
using System.IO;

namespace Stella.BusinessLogic
{
	/// <summary>
	/// 计时更新器
	/// </summary>
	public abstract class InfoSumUpdater
	{
		private InfoSumUpdater(){}

		private volatile static Timer timer;

		private static TimerCallback cb=new TimerCallback(update);

		/// <summary>
		/// 启动更新器,开始定时更新
		/// </summary>
		/// <remarks>
		/// 每三个小时更新一次数据库
		/// </remarks>
		public static void Start()
		{
			if(timer==null)
			{
				lock(typeof(Timer))
				{
					if(timer==null)
					{
						timer=new Timer(cb,null,TimeSpan.Zero,new TimeSpan(1,0,0));
					}
				}
			}
		}

		private static void update(object state)
		{
			try
			{
				ForumAccess fa=new ForumAccess();
				ForumInfoSum info=ForumInfoSum.GetInstance();
				fa.UpdateInfoSum(info);

				ThemeAccess ta=new ThemeAccess();
				ThemeInfoSum sum=ThemeInfoSum.GetInstance();
				ta.UpdateSum(sum);

				StreamWriter writer=new StreamWriter(Utility.ConfigHelper.LogPath,true);
				writer.WriteLine(" ==InfoSumUpdater run well !==");
				writer.WriteLine(" time: "+System.DateTime.Now.ToString());
				writer.Close();
			}
			catch(Exception e)
			{
				StreamWriter writer=new StreamWriter(Utility.ConfigHelper.LogPath,true);
				writer.WriteLine(e.ToString());
				writer.Close();
			}

		}

		/// <summary>
		/// 停止更新
		/// </summary>
		public static void Stop()
		{
			timer.Dispose();
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -