diff --git a/Source/Framework/Dynamic/TaskScheduler.cs b/Source/Framework/Dynamic/TaskScheduler.cs
index 493cead86..094ca89ef 100644
--- a/Source/Framework/Dynamic/TaskScheduler.cs
+++ b/Source/Framework/Dynamic/TaskScheduler.cs
@@ -139,7 +139,7 @@ namespace Framework.Dynamic
///
public TaskScheduler Schedule(TimeSpan min, TimeSpan max, Action task)
{
- return Schedule(RandomDurationBetween(min, max), task);
+ return Schedule(RandomHelper.RandTime(min, max), task);
}
///
@@ -153,7 +153,7 @@ namespace Framework.Dynamic
///
public TaskScheduler Schedule(TimeSpan min, TimeSpan max, uint group, Action task)
{
- return Schedule(RandomDurationBetween(min, max), group, task);
+ return Schedule(RandomHelper.RandTime(min, max), group, task);
}
public TaskScheduler CancelAll()
@@ -200,7 +200,7 @@ namespace Framework.Dynamic
///
public TaskScheduler DelayAll(TimeSpan min, TimeSpan max)
{
- return DelayAll(RandomDurationBetween(min, max));
+ return DelayAll(RandomHelper.RandTime(min, max));
}
///
@@ -233,7 +233,7 @@ namespace Framework.Dynamic
///
public TaskScheduler DelayGroup(uint group, TimeSpan min, TimeSpan max)
{
- return DelayGroup(group, RandomDurationBetween(min, max));
+ return DelayGroup(group, RandomHelper.RandTime(min, max));
}
///
@@ -260,7 +260,7 @@ namespace Framework.Dynamic
///
public TaskScheduler RescheduleAll(TimeSpan min, TimeSpan max)
{
- return RescheduleAll(RandomDurationBetween(min, max));
+ return RescheduleAll(RandomHelper.RandTime(min, max));
}
///
@@ -294,7 +294,7 @@ namespace Framework.Dynamic
///
public TaskScheduler RescheduleGroup(uint group, TimeSpan min, TimeSpan max)
{
- return RescheduleGroup(group, RandomDurationBetween(min, max));
+ return RescheduleGroup(group, RandomHelper.RandTime(min, max));
}
internal TaskScheduler InsertTask(Task task)
@@ -322,21 +322,6 @@ namespace Framework.Dynamic
return InsertTask(new Task(end + time, time, group, 0, task));
}
- ///
- /// Returns a random duration between min and max
- ///
- ///
- ///
- /// TimeSpan
- public static TimeSpan RandomDurationBetween(TimeSpan min, TimeSpan max)
- {
- var milli_min = min.TotalMilliseconds;
- var milli_max = max.TotalMilliseconds;
-
- // TC specific: use SFMT URandom
- return TimeSpan.FromMilliseconds(RandomHelper.URand(milli_min, milli_max));
- }
-
void Dispatch(success_t callback = null)
{
// If the validation failed abort the dispatching here.
@@ -672,7 +657,7 @@ namespace Framework.Dynamic
///
public TaskContext Repeat(TimeSpan min, TimeSpan max)
{
- return Repeat(TaskScheduler.RandomDurationBetween(min, max));
+ return Repeat(RandomHelper.RandTime(min, max));
}
///
@@ -720,7 +705,7 @@ namespace Framework.Dynamic
///
public TaskContext Schedule(TimeSpan min, TimeSpan max, Action task)
{
- return Schedule(TaskScheduler.RandomDurationBetween(min, max), task);
+ return Schedule(RandomHelper.RandTime(min, max), task);
}
public TaskContext Schedule(TimeSpan min, TimeSpan max, Action task) { return Schedule(min, max, delegate (TaskContext task1) { task(); }); }
@@ -737,7 +722,7 @@ namespace Framework.Dynamic
///
public TaskContext Schedule(TimeSpan min, TimeSpan max, uint group, Action task)
{
- return Schedule(TaskScheduler.RandomDurationBetween(min, max), group, task);
+ return Schedule(RandomHelper.RandTime(min, max), group, task);
}
public TaskContext Schedule(TimeSpan min, TimeSpan max, uint group, Action task) { return Schedule(min, max, group, delegate (TaskContext task1) { task(); }); }
@@ -759,7 +744,7 @@ namespace Framework.Dynamic
///
public TaskContext DelayAll(TimeSpan min, TimeSpan max)
{
- return DelayAll(TaskScheduler.RandomDurationBetween(min, max));
+ return DelayAll(RandomHelper.RandTime(min, max));
}
///
@@ -782,7 +767,7 @@ namespace Framework.Dynamic
///
public TaskContext DelayGroup(uint group, TimeSpan min, TimeSpan max)
{
- return DelayGroup(group, TaskScheduler.RandomDurationBetween(min, max));
+ return DelayGroup(group, RandomHelper.RandTime(min, max));
}
///
@@ -803,7 +788,7 @@ namespace Framework.Dynamic
///
public TaskContext RescheduleAll(TimeSpan min, TimeSpan max)
{
- return RescheduleAll(TaskScheduler.RandomDurationBetween(min, max));
+ return RescheduleAll(RandomHelper.RandTime(min, max));
}
///
@@ -826,7 +811,7 @@ namespace Framework.Dynamic
///
public TaskContext RescheduleGroup(uint group, TimeSpan min, TimeSpan max)
{
- return RescheduleGroup(group, TaskScheduler.RandomDurationBetween(min, max));
+ return RescheduleGroup(group, RandomHelper.RandTime(min, max));
}
// Associated task