Запросы базы данных Typeorm блокируют поток электронных компонентов - PullRequest
0 голосов
/ 20 июня 2019

В настоящее время я работаю над приложением elctron, которое использует typeorm для чтения из базы данных. Проблема в том, что любые вызовы базы данных блокируют основной поток и поток пользовательского интерфейса, хотя все методы помечены как асинхронные, и я жду их всех. Я также использую Electron-лучше-IPC для упрощения связи между основным и пользовательским интерфейсом. Вот пример

Вызов основного процесса из пользовательского интерфейса

messages = await ipc.callMain("getRelevantMessages", this.currentConversation);

getRelevantMessages в основном процессе

async getRelevantMessages(conversation: Conversations)
{
    let messages = await this.messageRepository.find({ convo_id: conversation.id, type: 12 });
    return messages;
}

Что я могу сделать, чтобы вышеуказанный код не блокировал поток пользовательского интерфейса?

...