Vladimir
Логично
Anton
К гадалке не ходи
Vladimir
Ну такое
Aleksey
Жизнь говно
Маjко
Anton
Vladimir
Просто суть в том, что сложно сделать апи которое будет "расширяемым" это как та статья про итераторы внешние/внутренние и их отличие
Aleksey
Маjко
В окно.
Ну это не единственный х)
Aleksey
Да выходов и правда много.
Anton
он как бы нестабилен, но тех идей что наговнокодили изначально стараются придерживатся
Vladimir
Разве?
Aleksey
Ну не такой уж токио и сложный. По сути два трейта
Vladimir
Токио или фьючи?
Vladimir
Я думаю тут нужно разделять
Anton
Aleksey
Фьючи, а такио это всего лишь гибрид фьючеров и мио
Anton
tokio tls на подходе
Vladimir
Фьючи сложные потому что расширяемые. Токио сложный потому что поверх фьюч
Маjко
Aleksey
Сервис не юзал, а кодек весьма няшен
Маjко
tokio-tls
tokio-proto
tokio-io
tokio
tokio-core
Vladimir
Anton
workspace же
Vladimir
Прото вроде деприкейтед
Anton
ниразу
Маjко
Vladimir
Ну хз, когда критиковали Токио, то вроде просто всегда критикуют
Anton
если быстро на коленке нужно собрать client/server для какого нить протокола
Anton
я вот не понимаю мио
Anton
у епул дата 64 бита
Anton
сокет 32 бита
Anton
отдали бы 32 под сокет 32 под токен
Vladimir
если быстро на коленке нужно собрать client/server для какого нить протокола
pub trait ClientProto<T: 'static>: 'static {
type Request: 'static;
type Response: 'static;
type Transport: 'static + Stream<Item = (RequestId, Self::Response), Error = Error> + Sink<SinkItem = (RequestId, Self::Request), SinkError = Error>;
type BindTransport: IntoFuture<Item = Self::Transport, Error = Error>;
fn bind_transport(&self, io: T) -> Self::BindTransport;
}
Vladimir
быстро на коленке
Маjко
Копипаст из доки
Маjко
Это быстро
Маjко
гостайл
Маjко
Раст почти готов для прода
Vladimir
Vladimir
хз мне кажется их концепция "тасков" в коре токио, слегка костыльной
Anton
https://docs.rs/mio/0.6.11/mio/
Anton
for event in events.iter() {
match event.token() {
Anton
я про то что для token могли бы отдать 32 всего
Anton
не пришлось бы отдельно держать socket_t
Anton
хэндл
Anton
он бы прилетал прям в эвенте
Vladimir
ясно
Vladimir
может дело в том, что не епулом единым?
Vladimir
я сейчас не помню интерфейсы, но на вскидку select принимает вообще только фд и их нужно самому мапить на токены
Kerrigan
я понял что меня бесит в гипере
Kerrigan
надо постоянно переизобретать типы и всё переписывать
Kerrigan
без ide
Anton
Anton
про винду правда не вкурсе
Vladimir
select?
Anton
селект разве в мио есть?
Vladimir
я хз что у них есть
Vladimir
но селект де-факто дефолт
Anton
нинай селек это пипец динозаврасть и за него держатся в 17ом
Vladimir
2к17ом
Anton
в любом случае селект тормозной, для такого случая можно запилить хэшмап внутри
Vladimir
А разве епул не поддерживает пайлоад?
Anton
разницы не будет
Anton
Vladimir
Я просто если честно не сильно понимаю тебя
Vladimir
вообще да они не правы что типа не возвращают сокет, но видимо так посчитали оптимальным
Vladimir
а ты сам не можешь в токен пихать сокет?
Cuno
Evented не только сокеты могут быть же
Anton
fd
Anton
назвали бы хэндел
Cuno
может и только fd, но в таком случае нужно от пользователя либы требовать конверсию в u32, что, наверное, не очень удобно
Anton
Anton