当我在img标签中使用ico文件作为src时,我在Firefox中遇到了下一个奇怪的行为.当它在Firefox(最新版本)中打开时,它具有16x16格式,尽管ico原始格式为128x128.在其他浏览器(Chrome,IE)中,一切都很棒.只需在Chrome和Firefox中打开elephant-128x128.ico即可看到差异.
<img height='128' src="http://icons.iconseeker.com/ico/cloth-dolls-icons/elephant-128x128.ico">
https://jsfiddle.net/qwx2sxzg/1/
Run Code Online (Sandbox Code Playgroud)
或 http://icons.iconseeker.com/ico/cloth-dolls-icons/elephant-128x128.ico 有人知道如何解决这个问题吗?
我们使用 Orleans Grain 作为会话,用事件填充会话,并希望在会话过期后(20 分钟不活动后)将会话保存到外部服务。最初我们打算使用 GrainCollectionOptions.CollectionAge 来保存停用时的会话,但在不同的来源中发现依赖 OnDeactivateAsync 并不安全,因为它可能并不总是被调用,特别是在筒仓崩溃或硬关闭期间。
有人可以建议针对此类用例的推荐方法吗?
这是我们的 Grain 代码:
public class SessionGrain : Grain, ISessionGrain
{
private readonly IPersistentState<Session> _persistentState;
public SessionGrain([PersistentState("sessionsState", "sessionsStorage")] IPersistentState<Session> persistentState)
{
_persistentState = persistentState;
}
public Task CompleteAsync()
{
DeactivateOnIdle();
return Task.CompletedTask;
}
public async Task<Session> TrackEventAsync(Event @event)
{
_persistentState.State.Events.Add(@event);
await _persistentState.WriteStateAsync();
return _persistentState.State;
}
public override async Task OnActivateAsync()
{
if (_persistentState.State == null)
{
_persistentState.State = new Session();
}
await base.OnActivateAsync();
}
public override async Task OnDeactivateAsync()
{
// …Run Code Online (Sandbox Code Playgroud)