Пакеты

1,137
5
3
Доброго дня, читатель. У меня появилась такая проблема. Вернее она была изначально. Собственно, при игре с моим модом на сервере, спустя какое-то время, игрока кикает с ошибкой в клиентскую консоль
"NetworkDispatcher exception
io.netty.handler.timeout.ReadTimeoutException"
Я понял, что дело в пакетах, но как избавиться от этой ошибки? Никто не подскажет?
 
608
5
15
Это вроде как кикает когда нагрузка большая...
 
2,505
81
397
Не по теме.
else перед ифами совсем тяжело было вставить?

97a3bb28a125478cb31fe9fbc1c9229a.png
 
1,137
5
3
Dahaka написал(а):
Не по теме.
else перед ифами совсем тяжело было вставить?

97a3bb28a125478cb31fe9fbc1c9229a.png
obj не может одновременно быть Boolean и Int, так не надо вставлять. Потом перепишу под котлиновский when
 
608
5
15
wilah написал(а):
Dahaka написал(а):
Не по теме.
else перед ифами совсем тяжело было вставить?

97a3bb28a125478cb31fe9fbc1c9229a.png
obj не может одновременно быть Boolean и Int, так не надо вставлять. Потом перепишу под котлиновский when
Не может то не может, но всеравно производится куча проверок вместо одной :)
 
1,137
5
3
Как бы да, но, возможно, нет. Компилятор такое может оптимизировать. В любом случае, я буду это сокращать
 
608
5
15
Компилятор такое может оптимизировать
Ленивая задница, за тебя всё компилятор везде делать должен? :D
 
2,505
81
397
Плохой подход надеяться на компилятор
 
1,137
5
3
Dahaka написал(а):
Плохой подход надеяться на компилятор
Код:
 private fun createPacket(buf: ByteBuf, vararg data: Any): FMLProxyPacket {
        data.forEach {
            when (it) {
                is Boolean -> buf.writeBoolean(it)
                is Byte -> buf.writeByte(it.toInt())
                is Short -> buf.writeShort(it.toInt())
                is Int -> buf.writeInt(it)
                is Float -> buf.writeFloat(it)
                is Double -> buf.writeDouble(it)
                is Long -> buf.writeLong(it)
                is Char -> buf.writeChar(it.toInt())
                is String -> ByteBufUtils.writeUTF8String(buf, it)
                is ItemStack -> ByteBufUtils.writeItemStack(buf, it)
                is NBTTagCompound -> ByteBufUtils.writeTag(buf, it)
            }
        }
        return FMLProxyPacket(buf, channelName)
    }

Довольны?
 
Я настолько часто встречал в интернетах "Пакет Яровой", что когда увидел название темы подумал про него...
 
1,137
5
3
Magitrop написал(а):
Я настолько часто встречал в интернетах "Пакет Яровой", что когда увидел название темы подумал про него...
Оффтоп, так оффтоп.
*********
Пакет Яровой, по сути, - угроза. Ничего не изменится, лишь пугают. А если что-то кардинально изменится - будет митинг или что-то такое. А властям такое надо? Да ещё и в кризис?
 
1,137
5
3
Ну да, в РФ одни пенсионеры и "путен не ашыбается, так нада".
****************
По теме. Есть какой-то SimpleNetworkWrapper, советуют делать по нему. Но мне сказали, что там пакеты пропадают. Стоит ли юзать?
 
2,505
81
397
А чо, IMessage никак нельзя заюзать?
 
Сверху