Поскольку контроллер извлеченных результатов предназначен для управления данными, которые определяют представление таблицы, он принадлежит потоку / операции переднего плана, на которой выполняется пользовательский интерфейс.Довольно бессмысленно помещать его в фоновый поток, так как вы потеряете все преимущества его использования.
Я также был бы обеспокоен последствиями отправки сообщений делегата FRC через асинхронные потоки.Я не уверен, насколько надежным это будет.
Сказав все это, эскиз вашей реализации выглядит хорошо, насколько это возможно.