У меня есть программа-ноды, в которой мне нужно запустить две функции в начале программы, а затем получить доступ к результатам функции, в настоящее время с ожиданием каждой функции за раз, это работает, однако, чтобы сэкономить время и не ждать на GetService
и GetProcess
, так как мне нужны данные позже в проекте. Для получения этих данных требуется около 4 секунд, и я хочу запустить их в фоновом режиме, так как мне не нужны результаты сразу, как я могу это сделать это в node js, если я запускаю promise.all
Это будет ждать, пока getService
и getProcess
, а затем go до завершения программы.
пример
function main() {
//I want to run this both function in background to save time
let service = await GetServices();
this.process = await GetProcess();
…..//Here additional code is running
//let say that after 30 second this code is called
Let users = GetUser(service);
Let users = GetAdress(this.process);
}
Я действительно работаю в Йоменском генераторе https://yeoman.io/authoring/ https://yeoman.io/authoring/user-interactions.html
export default class myGenerator extends Generator {
//here I want run those function in background to save time as the prompt to the user takes some time (lets say user have many questions...)
async initializing() {
let service = await GetServices();
this.process = await GetProcess();
}
async prompting() {
const answers = await this.prompt([
{
type: "input",
name: "name",
message: "Your project name",
default: this.appname // Default to current folder name
},
{
type: "confirm",
name: "list",
choises: this.process //here I need to data from the function running in background
}
]);
}