Size: a a a

2020 January 11

OA

Oleg Andreev in rust_offtopic
Gymmasssorla
Что за визитка?
сорри, это дизайнерский мем, цитата лебедева
источник

B

Bogdan in rust_offtopic
Вафель
Pin<P> гарантирует что данные которые находятся за принтером P не двигаются, так что всё правильно
хм, за поинтером? т.е. сам поринтер может?
источник

G

Gymmasssorla in rust_offtopic
Bogdan
хм, за поинтером? т.е. сам поринтер может?
Да
источник

AZ

Alex Zhukovsky in rust_offtopic
То чувство когда компилятор умнее тебя
источник

KR

Kai Ren in rust_offtopic
Там не хватает , Luke! 🙃
источник

AZ

Alex Zhukovsky in rust_offtopic
кстати как видно, неплохая поддержка со стороны IDE
источник

VS

Victor Sapiens in rust_offtopic
Хм, @Psilon -
I.12.6.6 Atomic reads and writes
A conforming CLI shall guarantee that read and write access to properly aligned memory locationsnolargerthanthenativewordsize(thesizeoftypenative int)isatomic
(see §I.12.6.2) when all the write accesses to a location are the same size. Atomic writes shall alter no bits other than those written. Unless explicit layout control (see
Partition II (Controlling Instance Layout)) is used to alter the default behavior, data elements no larger than the natural word size (the size of a native int) shall be properly aligned. Object references shall be treated as though they are stored in the native word size.
[Note: There is no guarantee about atomic update (read-modify-write) of memory, except for methods provided for that purpose as part of the class library (see Partition IV). An atomic write of a “small data item” (an item no larger than the native word size) is required to do an atomic read/modify/write on hardware that does not support direct writes to small data items. end note]
[Note:Thereisnoguaranteedatomicaccessto8-bytedatawhenthesizeofanative intis 32 bits even though some implementations might perform atomic operations when the data is aligned on an 8-byte boundary. end note]
источник

AZ

Alex Zhukovsky in rust_offtopic
а что хм? Я это знал
источник

P

Pavel in rust_offtopic
Victor Sapiens
Хм, @Psilon -
I.12.6.6 Atomic reads and writes
A conforming CLI shall guarantee that read and write access to properly aligned memory locationsnolargerthanthenativewordsize(thesizeoftypenative int)isatomic
(see §I.12.6.2) when all the write accesses to a location are the same size. Atomic writes shall alter no bits other than those written. Unless explicit layout control (see
Partition II (Controlling Instance Layout)) is used to alter the default behavior, data elements no larger than the natural word size (the size of a native int) shall be properly aligned. Object references shall be treated as though they are stored in the native word size.
[Note: There is no guarantee about atomic update (read-modify-write) of memory, except for methods provided for that purpose as part of the class library (see Partition IV). An atomic write of a “small data item” (an item no larger than the native word size) is required to do an atomic read/modify/write on hardware that does not support direct writes to small data items. end note]
[Note:Thereisnoguaranteedatomicaccessto8-bytedatawhenthesizeofanative intis 32 bits even though some implementations might perform atomic operations when the data is aligned on an 8-byte boundary. end note]
с последнего параграфа взгрустнул
источник

P

Pavel in rust_offtopic
хотя предпоследний звучит обнадёживающе
источник

P

Pavel in rust_offtopic
а, не, не так понял, подумал, что про байт, а не про 8 байт
источник

VS

Victor Sapiens in rust_offtopic
Alex Zhukovsky
а что хм? Я это знал
Я про первый параграф и про «Спеку  библиотеки» и спеку «CLI» хотя может я опять что-то не так понял?)
источник

VS

Victor Sapiens in rust_offtopic
Note да, скорее про первую заметку а не параграф.
источник

VS

Victor Sapiens in rust_offtopic
Pavel
мне кажется, джавовская конкаренси поддержка одна из самых лучших среди старых популярных языков
Я подозреваю что в Шарпах не хуже учитывая что грин треды с асинхроншиной  у нас и так есть + атоимики, эвенты, мютексы, семафоры. Примитивы синхронизации уровня ядра и всякие гибридные. Хотя, ИМХО в Rust и в ФП получше будет да.
источник

P

Pavel in rust_offtopic
Victor Sapiens
Я подозреваю что в Шарпах не хуже учитывая что грин треды с асинхроншиной  у нас и так есть + атоимики, эвенты, мютексы, семафоры. Примитивы синхронизации уровня ядра и всякие гибридные. Хотя, ИМХО в Rust и в ФП получше будет да.
там точно грин треды, или то же самое, что в джаве с completable future? просто тасочки с флюент-синтаксислм ддя комбинирования и немного умности типа fork-join + work stealing
источник

P

Pavel in rust_offtopic
Victor Sapiens
Я подозреваю что в Шарпах не хуже учитывая что грин треды с асинхроншиной  у нас и так есть + атоимики, эвенты, мютексы, семафоры. Примитивы синхронизации уровня ядра и всякие гибридные. Хотя, ИМХО в Rust и в ФП получше будет да.
volatile ~= atomic
источник

P

Pavel in rust_offtopic
ну и в джаве (как языке) не может быть примитивов ядра, потому, что она допускает работу без ядра, потому там все примитивы местные
источник

VS

Victor Sapiens in rust_offtopic
Pavel
на любом языке, когда долго пишешь, появляются стандартные практики, что делать, как делать, как не делать, что не делать, кстати, это одна из причин, почему сеньёрам часто сложно проходить собесы с типичными техническими вопросами типа "а что будет, если два потока будут инкрементить эту не-волятильную переменную?" — какая разница, что будет, если этот код никто писать не будет?
Хм, меня так передёргивает когда про Синглтон спрашивают. В коде то я делаю его всегда через DI контейнер и пофиг что можно для двух контектстов два инстанса синглтона создать.  Хотя таки да зато + 1 вопрос на который я легко отвечаю )
источник

P

Pavel in rust_offtopic
Victor Sapiens
Хм, меня так передёргивает когда про Синглтон спрашивают. В коде то я делаю его всегда через DI контейнер и пофиг что можно для двух контектстов два инстанса синглтона создать.  Хотя таки да зато + 1 вопрос на который я легко отвечаю )
думаю, дёргает из-за мутабельного синглтона, обычный ещё не так страшно
источник

VS

Victor Sapiens in rust_offtopic
Pavel
там точно грин треды, или то же самое, что в джаве с completable future? просто тасочки с флюент-синтаксислм ддя комбинирования и немного умности типа fork-join + work stealing
Я хз как в JAVA в Шарпах это Стейт машина с набором колбеков которые выполняются на пуле потоков шедудером в зависимости от состояния этой стейт машины. Короче, M:N параллелизм. У тебя может быть 1 системный поток и 1000 зелёных Task которые его по очереди используют.
источник