Skip to content

Releases: wintoncode/Winton.Extensions.Threading.Actor

1.10.0

18 Jan 11:24
4ad8479
Compare
Choose a tag to compare

What's Changed

  • feat(Winton.Extensions.Threading.Actor): allow scheduler to enqueue work without suppressed transaction scope wrapper by @rars in #41

Full Changelog: 1.9.0...1.10.0

1.9.0

17 Jan 11:45
5ef73d8
Compare
Choose a tag to compare

What's Changed

  • feat(Winton.Extensions.Threading.Actor): allow opt-out of transaction scope wrapping in enqueue work by @rars in #40

Full Changelog: 1.8.0...1.9.0

1.8.0

12 Oct 10:11
4ebc258
Compare
Choose a tag to compare

Bug fixes

  • Fix #34: startup or enqueued work that defined a new transaction scope could restore a completed ambient transaction scope

1.7.0

23 Jun 15:00
6550ab1
Compare
Choose a tag to compare

Add a suppress TransactionScope for start/stop work

1.6.0

17 Jun 16:38
4d39c6e
Compare
Choose a tag to compare
  • Make sure there is no ambient transaction when running actor work

Version 1.5.0

01 Mar 11:10
173bee3
Compare
Choose a tag to compare

Internal changes only to improve performance when multiple work items are queued up.

Version 1.4.0

08 Feb 18:56
fc37902
Compare
Choose a tag to compare

This release incorporates a simplification of the codebase with the aim of improving performance and eliminating long-standing bugs.

It also introduces explicit support for NET Standard 2.0.

Overall, the changes made have reduced locking and complexity, which, apart from anything, has made it easier to track down long-standing spurious test failures and bugs. Performance isn't monumentally better but confidence that things are working correctly has been increased somewhat.

In detail:

  • Removed state machine in ActorImpl and merged ActorImpl into Actor;-
  • Refined ActorTaskScheduler and the way the kind of task being executed is communicated so that using async state is no longer necessary;
  • Replaced use of Queue<> in ActorTaskScheduler with something that easily allows putting something at the front, which simplified some logic;
  • Made use of pause/resume functionality in ActorTaskScheduler to simplify starting an Actor;
  • Made locking in ActorTaskScheduler more fine-grained;
  • Used UnsafeQueueUserWorkItem on platforms that support it.

Version 1.3.1

04 Oct 16:35
Compare
Choose a tag to compare

Bug fix release.

Version 1.3.0

04 Oct 10:30
Compare
Choose a tag to compare

Added a means of awaiting on an actor stopping via IActor.StoppedTask.

Version 1.2.0

20 Jun 13:59
Compare
Choose a tag to compare

A minor release incorporating an improvement to the way that pause/resume worked.