172 похожих чатов

Я всё ещё не догнал решения этой "типовой задачи" вот вставляю

я данные в таблицу в несколько потоков, разные люди хотят из этой таблицы забирать данные по отсечкам и у всех пропуски, если первый человек придёт, заберёт 100 строк и удалит их у меня, другие как будут забирать ?

7 ответов

25 просмотров

нет отсечек никаких :)

Lestat-Kim Автор вопроса
Alexey Bulgakov
нет отсечек никаких :)

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

Lestat Kim
супер, а как всем данные инкрементально забирать ?

просто забираете что есть в очереди. ограничивается limit

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

Lestat-Kim Автор вопроса
Ilya Anfimov
А зачем другие будут забирать эти 100 строк, если ...

ну потому что много кто хочет забрать эти строки, а если один удалит/ пометит, то как другие будут забирать ?

Lestat Kim
ну потому что много кто хочет забрать эти строки, ...

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

Lestat Kim
ну потому что много кто хочет забрать эти строки, ...

Вы задачу ещё раз уточните, что хотите сделать. Зачем вам вообще тогда очередь? Для каждого забирающего сохраняйте в таблице обработанных записей - что зачитал. Ещё нужно шедулер вешать который будет следить и подчищать записи которые все прочитали

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта