Вывод на печать Vala отображается в терминале только после закрытия окна - PullRequest
0 голосов
/ 20 сентября 2019

Я изучаю vala (после пары лет Java), и у меня есть этот очень простой код, только для того, чтобы сделать несколько тестов:

button_2.clicked.connect (() => {
    string test = "hello";
    stdout.printf (test);
});

Это класс Gtk.Window, и когда язапустите его и нажмите кнопку, скажем пять раз, ничего не происходит.

Затем, когда я закрываю окно, все пять выводов на печать появляются вместе в терминале.

 hellohellohellohellohello

В приложении Java после каждого нажатия кнопки вывод по отдельности отображается в терминале.

Интересно, почему приложение Vala не печатает, когда окно открыто, и есть ли способ обойти его?

Большое спасибо заранее за любой добрый ответ.

1 Ответ

1 голос
/ 21 сентября 2019

Выход буферизуется.Вставьте новую строку или позвоните stdout.flush().

...