Я хочу send
сообщений, когда захочу.Тем не менее, я не знаю, где поставить send()
.На самом деле я не знаю, что происходит после вызова run()
, но не внутри обработчика.
Моя текущая настройка - просто send
мое сообщение в on_open
, потому что это единственное место, где я могу поместить send
, чтобы заставить его работать.Тем не менее, отправка нескольких сообщений таким способом оказывается проблемой.Я могу закрыть соединение с on_message
, но я не могу снова send
через этого клиента, независимо от того, снова я connect
или run()
.
Идеальным решением было бы отказаться от close
и повторно открыть соединение или конечную точку.Снова, я хотел бы знать, куда я должен поместить send
, если не в on_open
или on_message
c.init_asio();
c.start_perpetual();//I've tried both perpetual and non-perpetual
//[associate handlers]
c.connect(con); //connecting and running works fine;
c.run(); //on_open, on_message work fine
sleep(15); //is 15 seconds enough for the asio to clean up everything?
c.connect(con); //any permutation of these two lines
c.run(); //do nothing after close() has been called
std::string test("test");
con->send(test,websocketpp::frame::opcode::TEXT); //this does nothing
, используя C ++ 11 и VS2015.Кроме того, я не могу скопировать / вставить код, поэтому я мог пропустить некоторые глупые опечатки. Не уверен, что еще сказать.Я не знаю, где я могу поставить send
, чтобы я мог отправить его по нажатию кнопки, например