В F# кто качает очередь сообщений?
В F#, если я делаю что-то вроде let form = new Form(Text = "MyForm") и запускаю ее в FSI, форма будет нормально отображаться и обновляться, и даже получать сообщения. Однако, кто качает очередь сообщений? Здесь нет приложения. Позвоните сюда. Я немного запутался.
2 ответа
Решение
Как говорит ildjarn, F# Interactive реализует свой собственный цикл сообщений. Интересно, что цикл сообщений не жестко закодирован в F# Interactive, так что вы можете изменить его. Это очень полезно, потому что по умолчанию основано на Windows Forms, но есть и другие структуры GUI, которые вы можете использовать.
Для этого вам необходимо реализовать IEventLoop
интерфейс, а затем назначьте свой экземпляр fsi.EventLoop
имущество. Для получения дополнительной информации см.: