* Simplified task control by having all logic in a single class and using async control mechanism * Fixed the tests * Made the marking of a backup partial explicitly communicated if the enumeration process is stopped. * Added support for pausing active transfers * Introduced transfer token to abort operations. * Updated the way LiveControl is emitting events. * Retains the paused state of the server across reboots, this fixes #5760. * Reworked the way throttle speeds are propagated through LiveControls. * Added option to pause transfers in the UI. * Removed throttle settings from the LiveControls class so it is exclusively handled by the ApplicationSettings. * Removed `thread-priority` as it does not work at all when tasks are used. * Fixed the stop dialog and API to only support stop and abort. * Removed unused variables
17 lines
479 B
C#
17 lines
479 B
C#
#nullable enable
|
|
using System;
|
|
using Duplicati.Library.Utility;
|
|
using Duplicati.Server;
|
|
|
|
namespace Duplicati.Library.RestAPI.Abstractions;
|
|
|
|
public interface IWorkerThreadsManager
|
|
{
|
|
void Spawn(Action<Runner.IRunnerData> item);
|
|
|
|
Tuple<long, string>? CurrentTask { get; }
|
|
WorkerThread<Runner.IRunnerData>? WorkerThread { get; }
|
|
void UpdateThrottleSpeeds(string uploadSpeed, string downloadSpeed);
|
|
|
|
long AddTask(Runner.IRunnerData data, bool skipQueue = false);
|
|
} |