Lidando com o tempo atual em banana reativa
Idealmente, eu gostaria de ter umBehaviour
que posso "pesquisar" para obter a hora atual. No entanto, as pesquisasBehaviour
s comEvent
s (via<@
etc.) me fornece o valor doBehaviour
deanterior Event
, não o valor atual. (Eu sei que isso é para evitar definições cíclicas que são realmente úteis.)
eu encontreifromPoll
o que eu pensei que ajudaria.Behaviour
s que são observados defromPoll
não pode depender de si mesmos, portanto, nenhum ciclo pode ser introduzido observando o comportamentologo antes estaEvent
é demitido em vez delogo após o anteriorEvent
disparamos.
Em termos um pouco mais formais, estou sugerindo queEvent
s sempre ocorrem no momentot + eBehaviours
são sempre observados no momentot- isto éEvent
s observam comportamentos que acontecem um tempo infinitamente curto diante deles. Novos valores deBehaviour
s gerados poraccumB
e amigos sempre começavam do tempot + por isso não pôde ser observado porEvent
s que também acontecem no momentot +.
Sob essa semântica propostaBehaviour
s criado porfromPoll
seria atualizado imediatamente antes de cadaEvent
é processado. De outrosBehaviour
s seriam atualizados posteriormente porque são criados poraccumB
e amigos.
Enfim, é uma digressão significativa para a minha pergunta principal. Eu quero saber se há alguma maneira de lidaratual hora (não a hora doanterior Event
) em banana reativa. Meu caso de uso é, por exemplo, acompanhar os pings que as entidades enviam e se alguma delas não enviou um ping em um intervalo de tempo específico para sinalizar um evento de aviso.
É claro que posso e acionarei eventos com muita frequência, para que meus avisos não sejam incorretos em grande quantidade. No entanto, parece uma verruga que eles não podem ser precisos.
Qual é a maneira correta de lidar com isso?