Was wurde bisher in Haskell getan, um Aufträge für die Ausführung auf native Weise zu planen? Hier ist eine Skizze von dem, was ich denke.
Angenommen, ich habe eine Funktion work
, die ich in Date
ausführen soll, vermutlich in der Zukunft (wenn nicht, können wir sie einfach für die sofortige Ausführung einplanen). In diesem Fall tun wir einfach so, als gäbe es eine Art Job
-Monade, in der dies vorkommen könnte.
Dies wird dann in einen (vorzugsweise persistenten) Scheduling-Mechanismus übergeben, der den geplanten Job zu einem geeigneten Zeitpunkt ausführt und auch eine Art von Referenz JobId
bereitstellt, so dass der Job inspiziert oder neu geplant werden kann. Ich habe ein paar verschiedene Job Scheduling-Bibliotheken in Ruby, wie Delayed Job und Sidekiq verwendet. Gibt es in der Haskell-Community ähnliche Arbeiten zum Job-Scheduling-Problem? Vielleicht ergibt sich bei Haskell aus der Natur der Sprache ein Muster, das bei einigen primitiven Funktionen eine Bibliothek nicht unbedingt notwendig macht?
Warum nicht forkIO
und threadDelay
?
Hier ist eine Skizze, was Sie tun können:
%Vor%Tags und Links haskell job-scheduling