IdGen Versions Save

Twitter Snowflake-alike ID generator for .Net

2.0.1

7 years ago

Timesource(s) is (are) no longer fixed to 'millisecond resolution'; we now have the concept of a 'tick'. Each timesource can define it's own definition of what a 'tick' is, be it a millisecond or a minute or any other timespan.

This means breaking changes in the ITimeSource interface and the way timesources are implemented and breaking changes in some of the MaskConfig's method signatures.

The IIdGenerator<T> interface now explicitly exposes an IdGenerator's ITimeSource, MaskConfig and Epoch as (read-only) properties.

CreateMachineSpecificGenerator() & CreateThreadSpecificGenerator() methods have been removed; these are way to 'dangerous' to use anyway since they are very prone to 'collisions' in 'auto-generated' values for the IdGenerators.

1.1

8 years ago

Moved away from DateTime.UtcNow and implemented a better, millisecond resolution, DefaultTimeSource using QueryPerformanceCounter.

1.0

9 years ago