The only use case I can think of (because I've experienced it) is using
pause to prioritize specific copying. If we have multiple things going
over the wire, and suddenly I want one to be the only thing going, to
make it get there as fast as possible, I'd pause the lower priority
ones. Now maybe that introduces the need for explicit prioritizing, but that seems quite a complicated solution and concept. Kirk Matthew Paul Thomas wrote: 3. Should pause functionality also be provided where suitable?What are the use cases for pausing an operation? If the answer is "to stop the disk from churning when trying to do two things on the same disk at the same time", that's probably something GIO should handle automatically, rather than requiring manual intervention. (The rules could be: (1) during pre-flighting, all tasks involving the same disk(s) are paused; (2) any task that involves increasing disk space -- such as emptying the trash, or overwriting a larger item with a smaller one -- causes another task to pause, if that other task needs the disk space it will provide; (3) except for rule 2, any new task pauses to wait for any older task that involves the same files or folders; and (4) except for rules 2 and 3, bigger tasks pause to wait for smaller tasks involving the same disk.) |