Перейти к публикации
  • Сейчас на странице   Всего пользователей: 1   (0 пользователей, 1 гость)

Rooster

Программирование[10]

Перепись  

313 пользователей проголосовало

У вас нет прав на голосование в этом опросе, или на просмотр результатов опроса. Пожалуйста, войдите или зарегистрируйтесь для голосования в опросе.

Рекомендованные сообщения

помогите ето опять я со своей очередью :zatrolka_tupostu:

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

но чел пишет что нужно применять а я слишком туп чтобы понять о чем он пишетт

image.png.7d5e069173e9053026367e67ac6b341c.png


Лучший юзер — Rilay

 

Поделиться сообщением


Ссылка на сообщение
Rilay написал 58 минут назад:

помогите ето опять я со своей очередью :zatrolka_tupostu:

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

но чел пишет что нужно применять а я слишком туп чтобы понять о чем он пишетт

image.png.7d5e069173e9053026367e67ac6b341c.png

только прочитал что за таск

мне кажется имеется в виду, что ты создаёшь заполненные каким-то байтом файлы необходимого размера и редактируешь их через mmap как нужно

а про журналирование наверное имеется в виду, что mmap уже будет давать какие-то гарантии на случай сбоев, и мультипоточность там вроде можно разрулить и таким образом тебе не придётся об этом думать/реализовывать с нуля

 


 

zqHT9JA.png

IFVau8G.png

AohP0ps.png

Поделиться сообщением


Ссылка на сообщение
besteady написал 2 минуты назад:
Rilay написал 1 час назад:

помогите ето опять я со своей очередью :zatrolka_tupostu:

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

но чел пишет что нужно применять а я слишком туп чтобы понять о чем он пишетт

image.png.7d5e069173e9053026367e67ac6b341c.png

Показать больше  

только прочитал что за таск

мне кажется имеется в виду, что ты создаёшь заполненные каким-то байтом файлы необходимого размера и редактируешь их через mmap как нужно

а про журналирование наверное имеется в виду, что mmap уже будет давать какие-то гарантии на случай сбоев, и мультипоточность там вроде можно разрулить и таким образом тебе не придётся об этом думать/реализовывать с нуля

 

Так мне их не надо редактировать

У меня ща запись выглядит так типа

Записываем строку в конец файла 

Если строк >19 стало то создаём новый файл

И пишем в отдельный файл название нового(куда будем записывать уже следующие строки)

Я ничего не редактирую ведь


Лучший юзер — Rilay

 

Поделиться сообщением


Ссылка на сообщение
Rilay написал 1 минуту назад:
besteady написал 4 минуты назад:
Rilay написал 1 час назад:

помогите ето опять я со своей очередью :zatrolka_tupostu:

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

но чел пишет что нужно применять а я слишком туп чтобы понять о чем он пишетт

image.png.7d5e069173e9053026367e67ac6b341c.png

Показать больше  

только прочитал что за таск

мне кажется имеется в виду, что ты создаёшь заполненные каким-то байтом файлы необходимого размера и редактируешь их через mmap как нужно

а про журналирование наверное имеется в виду, что mmap уже будет давать какие-то гарантии на случай сбоев, и мультипоточность там вроде можно разрулить и таким образом тебе не придётся об этом думать/реализовывать с нуля

 

Так мне их не надо редактировать

У меня ща запись выглядит так типа

Записываем строку в конец файла 

Если строк >19 стало то создаём новый файл

И пишем в отдельный файл название нового(куда будем записывать уже следующие строки)

Я ничего не редактирую ведь

ну представь что у тебя файл заполнен пробелами

а записать строку в конец файла это значит поставить указатель на первый в файле пробел и записать туда строку

 

123....

..........

..........

 

записываем 12345

 

1231234

5............

..............

 

когда пробелов остается меньше чем нужно записать, создаем новый файл


 

zqHT9JA.png

IFVau8G.png

AohP0ps.png

Поделиться сообщением


Ссылка на сообщение
besteady написал 5 минут назад:
Rilay написал 10 минут назад:
besteady написал 13 минут назад:
Rilay написал 1 час назад:

помогите ето опять я со своей очередью :zatrolka_tupostu:

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

но чел пишет что нужно применять а я слишком туп чтобы понять о чем он пишетт

image.png.7d5e069173e9053026367e67ac6b341c.png

Показать больше  

только прочитал что за таск

мне кажется имеется в виду, что ты создаёшь заполненные каким-то байтом файлы необходимого размера и редактируешь их через mmap как нужно

а про журналирование наверное имеется в виду, что mmap уже будет давать какие-то гарантии на случай сбоев, и мультипоточность там вроде можно разрулить и таким образом тебе не придётся об этом думать/реализовывать с нуля

 

Так мне их не надо редактировать

У меня ща запись выглядит так типа

Записываем строку в конец файла 

Если строк >19 стало то создаём новый файл

И пишем в отдельный файл название нового(куда будем записывать уже следующие строки)

Я ничего не редактирую ведь

ну представь что у тебя файл заполнен пробелами

а записать строку в конец файла это значит поставить указатель на первый в файле пробел и записать туда строку

 

123....

..........

..........

 

записываем 12345

 

1231234

5............

..............

 

когда пробелов остается меньше чем нужно записать, создаем новый файл

Это типа после того как создаем файл, заполнить его пробелами? 

Создаём файл

Открываем

Заполняем пробелами 

Закрываем

Маппим и меняем пробелы на значения

:valakas:

 


Лучший юзер — Rilay

 

Поделиться сообщением


Ссылка на сообщение

да наверное в линуксе можно как-нибудь и зарезервить кусок памяти

но создать/скопировать заполненный файл как-то более прозрачно


 

zqHT9JA.png

IFVau8G.png

AohP0ps.png

Поделиться сообщением


Ссылка на сообщение

 

вообще можно найти/написать_на_fuse filesystem, который будет файл автоматически делить на множество мелких файлов, но для пользователя это будет выглядеть как один файл

 

хотя если учитывать что надо без "маршалинга", то можно наоборот сделать чтобы каждое сообщение было файлом с ордером через название соответственно, а файл системом это автоматически транслируется в набор файлов заданного размера

 

но в принципе тут и просят написать по-разному и сравнить

 

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


 

zqHT9JA.png

IFVau8G.png

AohP0ps.png

Поделиться сообщением


Ссылка на сообщение
(изменено)
Rilay написал 1 час назад:

Это типа после того как создаем файл, заполнить его пробелами? 

Создаём файл

Открываем

Заполняем пробелами 

Закрываем

Маппим и меняем пробелы на значения

:valakas:

Не обязательно заполнять пробелами. Файлу можно просто задать размер. А чтобы знать, куда писать, нужно просто запоминать отдельно позицию курсора.

Что касается mmap - я не очень понимаю вашего лида. Он ничего гарантировать не может и ничем не лучше простой записи в файл. mmap не пишет мгновенно данные на диск. Точно также во время процесса записи может вырубить питание и данные будут записаны наполовину. Мб он лучше в этом разбирается, так почему бы ему не объяснить, в чем разница?

Без журналирования, по идее, в любом случае не обойтись, так как, как я уже сказал выше, содержимое отображаемого в память файла точно также может повредиться. Чтобы не городить транзакции, простейший способ бороться с этим, например, в конце записанной строки писать хэш от нее. Ну и флэшить после каждой записанной партии данных файл. Так как структура файла примитивная, этого достаточно. Для сложной структуры, конечно, без журнала транзакций уже никак.

Гарантировать же, что последнее пришедшее сообщение мы запишем в очередь, мы не можем. И никакое журналирование не спасет.


Изменено пользователем Grohuf

Поделиться сообщением


Ссылка на сообщение

за журналирование файловая система как раз должна отвечать

она предоставляет инструмент для безопасной записи

в том числе mmap

 

 

TikTok Owner ByteDance Mandates Shorter Working Hours

 

ByteDance Ltd. ordered its employees to end their day by 7 p.m., becoming one of the first tech companies in China to officially mandate shorter working hours. 

Staff in China should only work from 10 a.m. to 7 p.m. on Mondays to Fridays and will need to seek permission to stay beyond those hours at least one day in advance, according to an internal document on Monday that was seen by Bloomberg News. A representative for the TikTok and Douyin owner declined to comment. 

The country’s grueling work pace -- known as “996” because employees often labor from 9 a.m. to 9 p.m. six days a week -- was long celebrated by tech billionaires from Alibaba Group Holding Ltd.’s Jack Ma to JD.com Inc. founder Richard Liu. But it’s come under renewed scrutiny this year, fueled by deaths associated with overwork and a growing chorus of social media complaints. With President Xi Jinping calling on the country to work toward “common prosperity,” authorities have stepped up warnings against employers to refrain from unreasonable overtime and other violations. 

 

Грац Вову!

GoldRobot понравилось это

 

zqHT9JA.png

IFVau8G.png

AohP0ps.png

Поделиться сообщением


Ссылка на сообщение
(изменено)

На тему таска https://habr.com/ru/post/315654/

Вообще прикольный таск конечно

Можно посидеть, почитать, посмотреть как в других местах сделано, написать бенчи - сравнить, покрыть тестами, выложить на гитхаб 


Изменено пользователем besteady

 

zqHT9JA.png

IFVau8G.png

AohP0ps.png

Поделиться сообщением


Ссылка на сообщение

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

Я параллельно походил по собесам и понял, что мой тимлидский бэкграунд скорее вредит мне - всем нужен чел, который пишет код и не задаёт лишних вопросов. А я в последние полтора года код писал 20% времени, и уж тем более на гитхаб ничего не выкладывал.
Решил повеслать в хорошей команде и набраться опыта - там как раз тот стек, которым я не владею почти, и который актуальный на рынке.

 

Правда щас немного корежит от мысли, что снова буду обычным работягой. Руководство и организационные моментики мне ближе по душе. 

 

 

Поделиться сообщением


Ссылка на сообщение

image.png.3f7e8e424af93b439610daab7189fe4c.png

как сказать типа if string[i+1] == nul

как этот нул обозначается??


Лучший юзер — Rilay

 

Поделиться сообщением


Ссылка на сообщение
(изменено)

блокнот++ так обозначает нулевой байт, ты бы хоть язык напиал ща какой у тебя

обычно '\0' или если там сразу байты, а не чары, то просто 0

 

 

 

если что, заполнение пробелами как раз означало заполнение нулевым байтом, а не реальными пробелами


Изменено пользователем Kant

Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение
Kant написал 5 минут назад:

блокнот++ так обозначает нулевой байт, ты бы хоть язык напиал ща какой у тебя

обычно '\0' или если там сразу байты, а не чары, то просто 0

у меня гоу

я прост создал файл  с заданным размером, и он заполнен вот етими нул

 


Лучший юзер — Rilay

 

Поделиться сообщением


Ссылка на сообщение

ну чем-то же он должен быть заполнен, то что нолями это неплохо, для твоего случая лучше, чем случайным мусором с диска. А возможно эти нули и есть случайный мусор, тк ты ни разу в этот сектор винта не писал еще

или го почистил или ос почистила


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение
Kant написал Только что:

ну чем-то же он должен быть заполнен, то что нолями это неплохо, для твоего случая лучше, чем случайным мусором с диска. А возможно эти нули и есть случайный мусор, тк ты ни разу в этот сектор винта не писал еще

или го почистил или ос почистила

не, так все правильно что он заполнен нул, мне же маппить надо 

но как определять конец файла вот вопрос типа у меня функция записи видит типа ага нулов меньше чем надо создаем новый файл

а функция чтения должна типа ага после записи нул идем в некст файл

ток как обозначить етот самый нул?

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


Лучший юзер — Rilay

 

Поделиться сообщением


Ссылка на сообщение

причем нулы к размеру файла вообще? размер файла это его отдельный атрибут в файловой системе, он и так у файла всегда есть

маппед файлам вообще поебать на это, ты открываешь конкретный кусок конкретного файла в заданных пределах, когда ты будешь делать переход на другой файл мемори мапы не ебет никак, это будет другой мапнутый файл с другим вью.

 

как нулы обозначаются, ищи в гугле что у го с чаром 0, я хуй знает


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение
Rilay написал 11 минут назад:
Kant написал 13 минут назад:

ну чем-то же он должен быть заполнен, то что нолями это неплохо, для твоего случая лучше, чем случайным мусором с диска. А возможно эти нули и есть случайный мусор, тк ты ни разу в этот сектор винта не писал еще

или го почистил или ос почистила

не, так все правильно что он заполнен нул, мне же маппить надо 

но как определять конец файла вот вопрос типа у меня функция записи видит типа ага нулов меньше чем надо создаем новый файл

а функция чтения должна типа ага после записи нул идем в некст файл

ток как обозначить етот самый нул?

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

заебал, попроси зарегаться и зайти в топик на пд своего босса и его босса, ну что за испорченный телефон блять

Nikki Sixx, DeadMage, Kant и 5 другим понравилось это

Поделиться сообщением


Ссылка на сообщение
Kant написал 5 минут назад:

маппед файлам вообще поебать на это, ты открываешь конкретный кусок конкретного файла в заданных пределах

так если просто создать файл он будет равен 0, че толку его маппить, я делаю файл с нулами, и маппом заменяю их на нужные мне значения, как юзер выше посоветовал
 


Лучший юзер — Rilay

 

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...