Azure函数触发器在启动时只运行一次
创始人
2024-09-29 19:00:34
0

可以使用Timer Trigger与Singleton Pattern结合来解决这个问题。首先,在timer trigger的配置中设置一个间隔时间,确保函数会定期运行。接着,在自定义StartUp拓展类的Configure方法中,添加一个单例标记,每次运行函数前首先检查该标记是否存在。若存在,则跳过运行;若不存在,则运行函数,并设置单例标记。以下是C#代码示例:

public class Startup : FunctionsStartup
{
    public override void Configure(IFunctionsHostBuilder builder)
    {
        builder.Services.AddSingleton();

        builder.Services.AddHttpClient();
    }
}

public class Function1
{
    private readonly SingletonService _singletonService;
    private readonly HttpClient _httpClient;

    public Function1(SingletonService singletonService, HttpClient httpClient)
    {
        _singletonService = singletonService;
        _httpClient = httpClient;
    }

    [FunctionName("Function1")]
    public async Task Run([TimerTrigger("0 */5 * * * *")]TimerInfo myTimer, ILogger log)
    {
        log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");

        if (_singletonService.InstanceCount == 1)
        {
            log.LogInformation($"Function has already run once on startup.");
            return new OkResult();
        }

        // Function logic
        // ...

        _singletonService.SetInstanceCount(1);
        return new OkResult();
    }
}

public class SingletonService
{
    private int _instanceCount;

    public int InstanceCount => _instanceCount;

    public void SetInstanceCount(int count)
    {
        _instanceCount = count;
    }
}

相关内容

热门资讯

突发!随意玩辅助器视频透视挂!... 突发!随意玩辅助器视频透视挂!果然真的有辅助下载(有挂工具)-哔哩哔哩1、下载好随意玩辅助器视频透视...
截至发稿!微信卡五星辅助器!真... 截至发稿!微信卡五星辅助器!真是真的是有辅助挂(发现有挂)-哔哩哔哩1、截至发稿!微信卡五星辅助器!...
做出回应!衢州都莱破解器!真是... 做出回应!衢州都莱破解器!真是有挂辅助软件(有挂实锤)-哔哩哔哩小薇(辅助器软件下载)致您一封信;亲...
今天下午!八仙游戏辅助!一贯存... 今天下午!八仙游戏辅助!一贯存在有辅助软件(有挂讲解)-哔哩哔哩1、进入到八仙游戏辅助是否有挂之后,...
经调查!道游辅助脚本!确实是真... 经调查!道游辅助脚本!确实是真的辅助脚本(有挂存在)-哔哩哔哩1、全新机制【道游辅助脚本ai辅助工具...
据相关数据显示!陕麻圈黑科技!... 据相关数据显示!陕麻圈黑科技!切实是有辅助软件(有挂详细)-哔哩哔哩1、进入游戏-大厅左侧-新手福利...
不少玩家反映!福州十八扑有外g... 不少玩家反映!福州十八扑有外g挂吗!其实有挂辅助修改器(详细教程)-哔哩哔哩1、完成福州十八扑有外g...
记者获悉!福建兄弟13水辅助!... 记者获悉!福建兄弟13水辅助!总是是真的辅助安装(有挂方式)-哔哩哔哩1、完成福建兄弟13水辅助辅助...
截至目前!天天贵阳app破解版... 截至目前!天天贵阳app破解版!都是真的有辅助插件(有挂解惑)-哔哩哔哩1、实时天天贵阳app破解版...
截至发稿!掌中乐游戏中心云南辅... 截至发稿!掌中乐游戏中心云南辅助!一贯存在有辅助app(有挂规律)-哔哩哔哩掌中乐游戏中心云南辅助是...