Callback отмены Register в C#
Метод Register вешает на токен действие, которое выполнится в момент отмены: закрыть файл или отпустить ресурс.
Код в этом действии не должен работать долго, иначе задержится отмена других подписок.
При вызове Cancel срабатывает действие и пишет "cancelled". Это происходит сразу, до выхода из Cancel:
using CancellationTokenSource cts = new();
using CancellationTokenRegistration reg = cts.Token.Register(() => Console.WriteLine("cancelled"));
cts.Cancel(); // выведет "cancelled"
При отмене запишите в переменную строку "freed" и выведите её.