All streams
Search
Write a publication
Pull to refresh
41
0
Сергей Шатунов @Prototik

JVM Backend разработчик

Send message

Хм, что удивительно, т.к. я в своё время на ноуте поменял rt8821ce на ax210 из-за кривых драйверов, которые после ребута линя в винду или обратно вели себя абсолютно неадекватно.

И ещё интересует какой именно там беспроводной чип (что, в целом, входит в вопрос "как там линукс")

Где Вы тут увидели какие-либо переходы?

Прокси это конечно хорошо, но Вы утвеждали про автопродление сертификатов, именно к этой части и возник вопрос: откуда они там взялись, кто их выдал и с какой целью вообще.

Это для клиентских приложений. Серверным вообще по барабану, какие CA там валяются в доверенных.
В свою очередь, предлагаю Вам поднять traefik перед клиентским приложением, и как и на какое имя он там будет что-то продлевать можете написать в своей статье ?

О гугл аккаунте. А гугл аккаунт != gmail, он может быть привязан на любую почту.

А есть поддержка RFC2136 aka Dynamic DNS update для лёгкой дружбы с letsencrypt с dns01 верификацией для wildcard сертификатов? Или придется самому костылять с апи?

Именно что бы народ попробовал и оценил, дал обратную связь и скорректировать разработку до релиза. А то впилят какую-то фичу как стабильную, потом выясняется, что всё не так надо было делать и вообще по-другому, а старое трогать уже нельзя, штабильность же.

Ну, да, в java такое тоже есть (а если говорить про jvm, именно про байткод - то там прямо таки есть goto в классическом его виде, не ограниченный только для break/continue).
Просто я сейчас в основном пишу на kotlin, а он компилируется не только для jvm, поэтому первый и пришёл на ум.

По поводу первого - такое есть в Kotlin, очень полезная штука.
Примеры:

outer@ while(/* condition */) {
  inner@ while(/* condition */) {
    if (error) {
      break@outer
    }
    if(eof) {
      break@inner // или просто break
    }
  }
}

Причём эти метки могут быть ещё и неявные, например, для разрешения неопределённости в каком контексте работает return в inline лямбдах:

fun compute(data: Data): Result {
  data.flatMap(/* process */).forEach {
    if (it.isSuccess) {
      return@compute it // это уже return из всей функции compute, а не из лямбды forEach
    }
  }
}
  1. Зачем вы сравниваете ipv4 и mac?

  2. Зачем вы вообще запоминаете адреса?

Используйте типы. Введите интерфейс Source (можно даже sealed), от него наследуйте и VideoSource, и AudioSource. MediaRecorder (и его билдер) типизируйте с <T : Source> ну и в нём одно поле val source: T.

Никак не связано, Car действительно никак не используется.
Если mapOf заменить на listOf<Car> - тогда рабочий.
А с мапой оно ещё и не работает по причине того, что в filter приходит Map.Entry, в котором лежит key и value, но содержимое фильтра клало на эту мааааленькую недоработку. Хоть бы в IDE код бы вставили, такие уж глупости они бы не пропустила...

Мне, как джависту, всё понятно, там и не такие дженерики можно увидеть иногда...

Разве что ~ заставляет подумать, но из текста статьи понятно, зачем оно.

Это уже называется property, а не field. Хоть в простейшем случае property может иметь backing field, но в общем это не так.

Лично я особой проблемы написать один-два метода в интерфейсе вместо филда не вижу, в go итак много boilerplate кода, будет ещё немного, чего уж...

Здесь автор не совсем точно выразился — в factorio есть tps, а есть fps. tps — это и есть игровые такты, и в нормальном состояние тактов всегда ровно 60 в секунду. Они могут проседать под нагрузкой (тем самым замедляя всё вокруг), но никогда не могут быть больше.
А fps можно сделать любой — он никак не влияет на tps.

То поток заблокируется. Какой именно поток — зависит от реализации, скорей-всего из отдельного пула. Само по себе суждение "используются асинхронные вызовы" не даёт информации о том, в каком потоке это будет происходить. И уж тем более из этого не следует, что на каждый запрос будет создаваться поток. Асинхронно можно делать и в одном потоке (см. javascript).

Это значит, что новый поток создается на каждый запрос?

Это значит, что используются асинхронные вызовы. Прекратите уже путать асинхронность и параллельность. Это не связанные между собой понятия, и возможны все четыре варианта их комбинации.

Information

Rating
6,295-th
Location
Красноярск, Красноярский край, Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Fullstack Developer
Linux
Java
Kotlin
Android development