开发工具与关键技术: VS C#
作者:梁茵茵
撰写时间:2020年5月28日
在做项目的时候经常会在临时文件夹里保存东西,积累久了东西就会越来越多可能会影响电脑的内存运行。所以要给这个临时文件夹一个定时器,定时处理里面的内存。这个定时器是FluentScheduler.dlI插件,要把它引入到项目里。当启动项目的时候可以不通过任何按钮来操作它,它会根据时间自动在后台清除这个临时文件夹保存的东西。
1、定义方法的时候需要构造函数,构造函数:函数名跟类名保持一致的函数。
获取项目运行目录来获取临时目录的绝对路径
string str = AppDomain.CurrentDomain.BaseDirectory + "";
判读是否存在目录
if (Directory.Exists(str))
如果不存在,就创建Temp目录
Directory.CreateDirectory(str);
如果存在目录,就删除所有的子目录和子文件
获取指定目录中的子目录的名称(包括其路径)
string[] directories = Directory.GetDirectories(str);
foreach (string directory in directories)
删除指定的目录并(如果指示)删除该目录中的所有子目录和文件。
Directory.Delete(directory, true);
返回指定目录中文件的名称(包括其路径)
string[] files = Directory.GetFiles(str);
foreach (string file in files)
删除指定的文件。
File.Delete(file);
2、方法写好之后就给一个时间它,FluentScheduler官方文档里有详细的使用说明。
在每天8点清理数据
Schedule<CleanJob>().ToRunNow().AndEvery(10).Days().At(8, 00);
立即执行计划任务,并根据指定时间间隔执行一次计划任务
(指定一个时间间隔运行,根据自己需求,可以是秒、分、时、天、月、年等。)
Schedule<CleanJob>().ToRunNow().AndEvery(10).Seconds();
延迟一个指定时间间隔执行一次计划任务。
(当然,这个间隔依然可以是秒、分、时、天、月、年等。)
Schedule<CleanJob>().ToRunOnceIn(10).Seconds();
在一个指定时间执行计划任务 每个小时的第10分钟执行
Schedule<CleanJob>().ToRunEvery(1).Hours().At(10);
在一个指定时间执行计划任务(最常用。这里是在每天的下午 1:10 分执行)
Schedule<CleanJob>().ToRunEvery(1).Days().At(13, 10);
每n年的第几天
Schedule<CleanJob>().ToRunEvery(1).Years().On(5);
每n年的最后一天
Schedule<CleanJob>().ToRunEvery(1).Years().OnTheLastDay();
每n月的第几天
Schedule<CleanJob>().ToRunEvery(1).Months().On(1);
每n月的第一个星期的星期5 的15:0执行
Schedule<CleanJob>().AndThen<CleanJob>().ToRunEvery(1).
Months().OnTheFirst(DayOfWeek.Friday).At(15, 0);
每n月的第一个星期的星期5 的15:0执行
Schedule<CleanJob>().AndThen<CleanJob>().ToRunEvery(1).
Months().OnTheFirst(DayOfWeek.Friday).At(15, 0);