- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在一个研究项目中使用 Azure Durable Functions,我想验证在持久实体中实现计时器/提醒概念的最佳方法是什么。
在 Service Fabric 中,Actor 可以安排“持久计时器”,以便框架可以调用 Actor 本身的方法。我正在寻找类似的概念。
考虑为我的系统中的每个设备创建一个持久实体。我希望每个参与者都按计划运行功能,并自行安排。 (我想避免使用需要为每个设备安排任务的编排功能,而只是让实体自行运行任务)。
这是允许的、可能的或预见的事情吗?
希望这个问题足够清楚,但很乐意在需要时提供更多背景信息。
最佳答案
来自the docs :
To invoke an operation on an entity, specify the [....] Scheduled time, which is an optional parameter for specifying the delivery time of the operation. For example, an operation can be reliably scheduled to run several days in the future. So there is an option to schedule invocations of the entities
但是,您希望从持久实体内部进行安排。这也可以通过使用 Entity.Current.SignalEntity
( docs ) 实现。此方法作为重载,接受 DateTime,该 DateTime 指定开始操作的时间。
下面的代码将使用 http 触发函数开始递增计数器。在 azure 函数首次启动后,该实体将每 5 秒为自己安排一次操作。
using System;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.AspNetCore.Http;
using Microsoft.Azure.WebJobs.Extensions.DurableTask;
using Microsoft.Extensions.Logging;
using Newtonsoft.Json;
namespace FunctionApp3
{
public static class Function1
{
[FunctionName("Function1")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
[DurableClient] IDurableEntityClient client,
ILogger log)
{
log.LogInformation("C# HTTP trigger function processed a request.");
// Tell the Durable Entity to increase a counter
await client.SignalEntityAsync<ICounter>("aKey", e => e.IncreaseCount(1));
return new OkResult();
}
}
public interface ICounter
{
void IncreaseCount(int amount);
}
[JsonObject(MemberSerialization.OptIn)]
public class Counter : ICounter
{
private readonly ILogger _log;
public Counter(ILogger<Counter> log)
{
_log = log;
}
[JsonProperty("value")]
public int CurrentValue { get; set; }
public void IncreaseCount(int amount)
{
this.CurrentValue += amount;
if(this.CurrentValue) > 10
return;
// Schedule a call to this entity to IncreaseCount after 5 seconds.
// Once the method is called, schedule it again to create the effect of a timer
Entity.Current.SignalEntity<ICounter>(Entity.Current.EntityId, DateTime.Now.AddSeconds(5), e => e.IncreaseCount(1));
_log.LogInformation(this.CurrentValue.ToString());
}
[FunctionName(nameof(Counter))]
public static Task Run([EntityTrigger] IDurableEntityContext ctx)
{
return ctx.DispatchAsync<Counter>();
}
}
}
这只是一个粗略的示例,但要点是使用 Entity.Current.SignalEntity
来安排实体本身的工作。
关于azure - 有没有办法在Azure Durable Functions的持久实体中安排 "Reminders"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64144839/
看起来很简单,但我做不到。我想从我的 native 应用程序启动 native 提醒应用程序。 根据我的阅读,我需要使用 x-apple-reminder:// URL 方案,但它不会启动 Remin
当前Slack API for Reminders 允许开发人员为特定的人创建提醒。此提醒通过 Slackbot 直接发送给他们;但是,我希望将提醒发布在公共(public) channel 中。 R
您好:我在名为“Docs”的工作表上有一组单元格。单元格范围为 (B13:C23)。当用户进入此页面时,他们应该用 0 到 6 之间的值填写每个单元格。我的问题:是否有一些代码可以附加到此表中,如果用
在 iOS 5 引入的提醒应用程序中,您可以设置地理围栏,因此当您靠近某个地址时,您的提醒就会提醒。还可以为特定日期配置基于位置的提醒。 Apple 在处理基于位置和时间的提醒方面非常高效,因为他们直
'/*========================================================================= &nbs
我正在研究 Bixby 集成,我正在浏览 Bixby 文档,我有一些关于 Bixby 提醒的营销信息,但我正在寻找如何以编程方式或通过 API 创建提醒,但我没有找到任何文档中的信息。 最佳答案 这是
我希望我的应用程序与 Reminders.app 同步。 (我的应用程序利用核心数据) 我已经完成了一个原型(prototype)并且它可以工作,但是有一些我无法思考的错误。 现在我的同步算法如下所示
如果我选择默认提醒应用程序在某天(例如 2 月 10 日)提醒我某事,并且在某个位置,它会显示类似“2 月 10 日,您的基于位置的提醒将处于事件状态”之类的内容。 因此它甚至可以在后台设置基于位置的
我正在开发一个具有提醒功能的应用程序。我使用的代码如下设置提醒和事件: private void addReminder(int statrYear, int startMonth, int star
我刚开始在 GNU/Linux 上使用提醒工具:remind man page .我有以下 bash 函数使用提醒来获取今天、明天和本周的提醒 today() { remind $SCHEDULE
我想通过添加“稍后提醒我”操作来扩展我的本地通知功能。换句话说,如果用户点击“稍后提醒我”按钮,我想在设定的时间后重新显示通知。 即使我的应用程序中的所有内容都应该正确连接(检查通知是否启用、设置通知
当 jsevent 触发时,它会将链接参数转发到按钮的 data-url 属性,当用户单击该按钮时,它会重定向到 django 后端 View ,但解析 JS 行时出现问题 $('#btn_del')
我在一个研究项目中使用 Azure Durable Functions,我想验证在持久实体中实现计时器/提醒概念的最佳方法是什么。 在 Service Fabric 中,Actor 可以安排“持久计时
我在一个研究项目中使用 Azure Durable Functions,我想验证在持久实体中实现计时器/提醒概念的最佳方法是什么。 在 Service Fabric 中,Actor 可以安排“持久计时
不幸的是,当我单击注册 Activity 上的“注册”按钮时。 主节。
我在我的网络应用程序中使用 Google Calendar API 来增删改查事件。 我想用值不发送任何提醒覆盖默认提醒设置。 我只找到了 overwrite the default , 但有一个新值
我目前正在为 iPhone 编写一个应用程序,但我的水平(水平滚动,而不是垂直滚动)UIScrollView 有一些问题。 UIScrollView的高度是260,宽度是320。它有2个页面,每个页面
有没有办法以编程方式打开 Apple Reminders 应用程序? 最佳答案 我已经在 Swift 5+ 和 iOS 13 上试过了,你需要使用下面的 url scheme。(之前 x-apple-
我一直在开发一款新应用,它通过地理围栏利用基于位置的提醒。 据我所知,为了做到这一点,应用程序必须通过以下方式请求授权: CLLocationManager.requestAlwaysAuthoriz
帮助,尝试从 EventKit 获取提醒列表的列表。这只是不返回任何东西。如果我将 EKEntityType.Reminder 更改为 .Event,我会得到日历(事件),所以我知道代码通常是好的。
我是一名优秀的程序员,十分优秀!