Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v1.0 F# scheduling API not sending any scheduled messages #831

Closed
raymens opened this issue Apr 10, 2015 · 3 comments
Closed

v1.0 F# scheduling API not sending any scheduled messages #831

raymens opened this issue Apr 10, 2015 · 3 comments

Comments

@raymens
Copy link

raymens commented Apr 10, 2015

Updating the Akka.net library from 0.8 to 1.0 seems to be breaking the F# scheduler.
The actor doesn't receive any messages, which worked fine on 0.8.
Had to do a small change because of a breaking API change in 1.0 from:

    system.Scheduler
    |> scheduleTell (TimeSpan.Zero) (TimeSpan.FromSeconds(30.)) () fetchRef
    |> ignore

To:

system.Scheduler.ScheduleTellRepeatedly(TimeSpan.Zero, TimeSpan.FromSeconds(10.), fetchRef, ())

The following stripped down code can be used to possibly reproduce it:

open Akka.FSharp
open System

let system = System.create "NotificationWorker" (Configuration.defaultConfig())
let handleMsg msg = printfn "Hi!"
let fetchRef = spawn system "NotificationFetch" (actorOf handleMsg)
system.Scheduler.ScheduleTellRepeatedly(TimeSpan.FromSeconds(5.), TimeSpan.FromSeconds(10.), fetchRef, ())
@Horusiath
Copy link
Contributor

Internal construction of ScheduleTellRepeatedly (and possibly other F# method overrides too) doesn't call underlying C# method implementation having the same name, going into infinite recursive loop call instead.

EDIT: I see that, ITellScheduler extensions inside F# API could be dropped completely.

@Horusiath
Copy link
Contributor

Fixed by #834

This was referenced Apr 28, 2015
@raymens
Copy link
Author

raymens commented Apr 28, 2015

EDIT: I see that, ITellScheduler extensions inside F# API could be dropped completely.

Yeah since 1.0 the difference between the C# and F# version is minimal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants