Aicrosoft.Scheduling 6.1.7

There is a newer version of this package available.
See the version list below for details.
dotnet add package Aicrosoft.Scheduling --version 6.1.7
                    
NuGet\Install-Package Aicrosoft.Scheduling -Version 6.1.7
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Aicrosoft.Scheduling" Version="6.1.7" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Aicrosoft.Scheduling" Version="6.1.7" />
                    
Directory.Packages.props
<PackageReference Include="Aicrosoft.Scheduling" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Aicrosoft.Scheduling --version 6.1.7
                    
#r "nuget: Aicrosoft.Scheduling, 6.1.7"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Aicrosoft.Scheduling@6.1.7
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Aicrosoft.Scheduling&version=6.1.7
                    
Install as a Cake Addin
#tool nuget:?package=Aicrosoft.Scheduling&version=6.1.7
                    
Install as a Cake Tool

Aicrosoft.Scheduling

简单的任务调度框架

Keywords: task,job,routine,schedule

关于UML 图及设计说明

  1. Job仅仅是描述工作的内容与用到的Woker;
  2. Woker是具体运行Job里描述的工作的实例。
  3. Job由具体的JobProvider创建,然后能过JobFactory汇总出所有的可用Jobs;
  4. Woker由WokerPoolProvider提供,然后由WokerPoolFactory汇总所有可用的Woker。

工作类型

  1. 由其它Worker唤醒的工作 Default
  2. 由系统启动的持续性工作 System = 1
  3. 由Supervisor启动的定时工作 Interval或者CronExpression。

Job的触发器

根据传入的Triger类型来生成触发器

  • Default 通过其它的Woker来触发的Job
  • Startup 大于0的延迟启动毫秒数,Int类型的数字
  • Interval 间隔运行的Job,Timespan类型
  • Schedulable 定时触发的Job,CronExpresssion表达式

关于Woker的核心设计理念

  • 根据Job的JobTrigger的Style可知,除了Default外,所有的Job都要在适当的时间运行。
  • 所以,所有非Default类型的Job的Worker都要继承TimerWorker来运行。
  • Default类型的Job才可以直接继承Worker来运行。

关于UML上Class创建与依赖的关系说明

  1. Instances are mostly created through DI through their interfaces.
  2. The interface instantiated by DI does not draw the relationship
  3. WorkShop 消费 Worker, WorkerPoolFactory 创建Woker。

Note List

  • 下次触发时间均以Utc时间为准[任意时间通过扩展方法 GetNextRun 取得的下次运行时间返回的是Utc时间]。

1.6.2.x

  • 新一代任务调试框架
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Aicrosoft.Scheduling:

Package Downloads
SuperJobs.Core

Extensions of Aicrosoft Ltd.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
8.6.0 116 3/15/2025
8.5.0 143 10/12/2024
8.3.0 136 9/10/2024
8.2.0 147 8/7/2024
6.4.0 364 11/20/2023
6.3.2 171 11/1/2023
6.2.1 196 8/25/2023
6.1.7 217 7/25/2023
6.1.6 203 5/17/2023
6.1.5 293 3/13/2023
6.1.4 302 3/11/2023
6.1.3 318 2/21/2023

Ver:6.1.6  2023-03-16 Release Notes:
- Fix some waring in code.
- Add extension method IfNotNullOrEmptyThen to run Action when a string value is not empty
- LogHelper.SetConfigurationVariable replaces old SetNLogConfigVariable (flag not available)
- Increase the execution of If conditions, mark other If methods as expired and be removed
- Added the generation of ReleaseNote