Использовать фоновый рабочий поток, поскольку это сообщение о сообщении пользовательского интерфейса, Эта статья MSDN , хотя в основном о WPF указывает, что BWT является интерфейсом пользователя, даже для оконных форм.
В этом случае предложение является субоптимальным. Правильный способ переписать этот код (который также не приводит к каким-либо предупреждениям IntelliJ):
src.mapTo(hashSetOf()) { it.length }
Это позволит избежать создания промежуточного списка, который впоследствии будет преобразован в набор; данные будут добавлены в результирующий набор сразу.
Set.map
возвращает список, который вы немедленно выбрасываете после преобразования в набор. Преимущество asSequence
заключается в том, что последовательность выполняет преобразование, по-видимому, без временного списка.