@dlangru

Страница 596 из 719
Denis
08.06.2018
10:03:30
форки не детектит и не предлагает сделать PR

починилось

Ievgenii
08.06.2018
10:10:21
Вообще то он еще не принадлежит им

Но, видимо, уже всем пофиг)))

Google
Denis
08.06.2018
10:18:37
А переменные глобальные в рамках модуля static они или нет это без разницы?

Как на поведение таких переменных влияет static?

Ievgenii
08.06.2018
10:37:20
При статики они будут разделяемые между потоками

А если без статики, думаю, они будут для каждого потока свои

Ievgenii
08.06.2018
10:38:18
это при shared же
шейред - это безопасный доступ к переменным из разных потоков

На базе мьютекса

Denis
08.06.2018
10:38:34
Нет

Ievgenii
08.06.2018
10:38:47
Разве?

Denis
08.06.2018
10:38:58
Разве?
shared это именно что грязные доступные всем переменные

Ievgenii
08.06.2018
10:39:23
Нет

Это __gshared

Maxim
08.06.2018
10:39:28
а не __gshared это?

Google
Ievgenii
08.06.2018
10:39:52
shared - это какраз безопасный доступ

а вот __gshared - это как ты сказал

Ты напутал

Хотя, не, статик не будут разделяемые в D

Скорее всего будет всеже своя копия

Нужно проверить

Denis
08.06.2018
10:41:38
shared - это какраз безопасный доступ
нет, это небезопасный доступ но с проверкой типа

(комментарий выше врёт!)

точно, да

но один фиг, к static это не относится

вот мне и интересно static стоит писать перед глобальными переменными модуля или нет?

Ievgenii
08.06.2018
10:42:47
https://dlang.org/articles/migrate-to-shared.html

int x; void main() { static int y; } dmd test -vtls test.d(2): x is thread local test.d(6): y is thread local

Denis
08.06.2018
10:43:32
а если static int x; это что даст?

ок ща

Ievgenii
08.06.2018
10:46:25
Думаю то же самое

Maxim
08.06.2018
10:48:52
The static attribute applies to functions and data. It means that the declaration does not apply to a particular instance of an object, but to the type of the object. In other words, it means there is no this reference. static is ignored when applied to other declarations.

короче, игнорируется оно в рамках модуля

за исключением, конечно же static this(), очень стройная и логичная структура)

Denis
08.06.2018
10:52:59
А ну ок тогда. Спасибо

Google
Pavel
08.06.2018
13:39:12
[main(qjsu) ERR] Connection error: Failed to connect to 54.149.52.189:443: refused [main(qjsu) ERR] /usr/include/dmd/phobos/std/exception.d:515 pure @safe void std.exception.bailOut!(Exception).bailOut(immutable(char)[], ulong, const(char[])) [0x60c47a] Как-то нельзя такое отловить нормально

Потому что Людвиг статус код спрятал внутри метода а наружу кидает просто стандартное исключение с текстом.

Так что можно проверить, сравнив подстроку "refused" с текстом исключения )

Dmitry
09.06.2018
06:31:28
Денис, слушай, а помнишь ты делал прослойку для PG чтобы данные отдавать по http. Не помню название. Слушай, а ты не думал сделать тоже для SQLite? Часто для пэт-проджект такое бывает нужно

Dmitry
09.06.2018
06:32:57
Бывает когда очень для простого сайта хочется заюзать

Denis
09.06.2018
06:33:44
Плохое желание же. Если уж сетевую демонюгу вешать то главное преимущество (легковесность) теряется же для sqlite

лучше уж на постгрес переехать

Dmitry
09.06.2018
06:34:36
Оно все очень большое

Ну просто иначе в файлах остается хранить если не хочется взрослую БД

Denis
09.06.2018
06:35:11
ну и что что большое?

зато смотри, у тебя sqlite бэкапится как?

Dmitry
09.06.2018
06:35:40
Как файлик

Denis
09.06.2018
06:35:48
ну ты понимаешь что это неправильно?

Dmitry
09.06.2018
06:36:11
Да понимаю. Но когда она только на чтение это норм

Denis
09.06.2018
06:37:59
странного хотите)

pgator сильно завязан на postgres

проще своё написать "по мотивам"

Google
Dmitry
09.06.2018
06:38:29
Просто имхо полезная штука была бы.

Denis
09.06.2018
06:38:38
Неа, только вам нужен sqlite

sqlite следует воспринимать как библиотеку для работы с csv

может вам в монгу перегнать данные? раз они только читаются

она в этом деле хороша

Dmitry
09.06.2018
06:41:09
Ты со мной на вы перешел?)) Нет. Это все очень большое) и ставить надо. Тут задача людям далеким от ИТ помочь делать хоть что то самим. Иначе придется все за них делать

Maxim
09.06.2018
06:43:51
что-то я так и не понял, какова конечная цель?)

Dmitry
09.06.2018
06:45:40
Показать человеку как сайт сделать и захостить копипастой на сервер

Stanislav
09.06.2018
06:47:04
если цель это хттпшная бд - то попробуй firebase

Dmitry
09.06.2018
06:47:24
Пасибо гляну

Admin
ERROR: S client not available

Stanislav
09.06.2018
06:47:54
она правда облачная, но бесплатная, ставить ниче не надо, зарегаться тока там ) гуголь выкупил их

Ievgenii
09.06.2018
07:50:17
Конструкторы сайтов, не?
Их уже столько))))

Maxim
09.06.2018
07:52:33
Ну я про то же)

Ievgenii
09.06.2018
16:10:54
Кто-то знает как заюзать SO_REUSEPORT в дишных сокетах?

Pavel
09.06.2018
16:22:37
Попробуй socket.setOption(SocketOptionLevel.SOCKET, SocketOption.REUSEADDR, true);

Вдруг это оно и есть

Ievgenii
09.06.2018
16:23:36
Нет

Google
Ievgenii
09.06.2018
16:23:39
Это не оно :(

Смотрю как сделано в вайбе

Они не через стандартные сокеты работают :(

Вот у них оно и работает

Да

А вот если использовать посиксовские сокеты - там есть

Прийдется их использовать

Pavel
09.06.2018
17:49:51
Эта константа это просто число, поэтому можешь взять его и установить через ту же команду socket.setOption()

Вот отсюда https://github.com/dlang/druntime/blob/551cbefad3779e135f429eeeeb8444d3ab148ce4/src/core/sys/posix/sys/socket.d#L306

Denis
09.06.2018
17:52:39
А вот если использовать посиксовские сокеты - там есть
REUSEPORT это вроде чисто линуксовое, не?

Он ждёт енум и инт не принемает
можно кастануть - схавает

Ievgenii
09.06.2018
17:53:11
Но он ругается, что передается не значение енума, а инт

Мол такого шаблона нет

Ничего, на посиксовых напишу

Все равно реализация только по линуху планирую

Denis
10.06.2018
11:26:38
https://forum.dlang.org/post/rqbmrsewfgptmmdtsabr@forum.dlang.org

https://dlang.org/changelog/2.080.1.html новый DMD

Ievgenii
10.06.2018
11:48:58
https://forum.dlang.org/post/rqbmrsewfgptmmdtsabr@forum.dlang.org
Правда требует доработки

DlangBot: ? Success! Output: /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o:function _start: error: undefined reference to 'main' collect2: error: ld returned 1 exit status [1m [1;31mError: [mlinker exited with status 1

Страница 596 из 719