Вопросы с тегами [buffer]

0

голосов
0

ответ
5

Просмотры

Как конвертировать из BLOB в PDF с использованием буфера в Node.js

Я пишу на основе HTML пользовательский графический интерфейс, который будет иметь возможность загружать цитаты для сгустка в моей SQL и при извлечении его с помощью функции GET, то он должен сделать поиск по базе данных и отправки PDF. В журнале консоли я вижу, что она проецирует буфер, но я не могу отобразить его на HTML-страницу как PDF, Что аа я делаю неправильно? app.get ( '/ viewq /: q_number', функция (REQ, разреш) {connection.query ( "SELECT * FROM q_file котировки ГДЕ q_number = '" + req.params.q_number +'", функция (ERR, результат) {вар FileData = новый буфер (25000); res.set ({ 'Content-Type': 'приложение / PDF', 'вложение': 'имя_файла = data.pdf', 'Content-Length': fileData.length}) ; res.write (FileData); console.log (FileData. нанизывать()); Отправить(); }); });
wimpie smith
1

голосов
0

ответ
402

Просмотры

Стек на основе VS кучного переполнения буфера

Почему кучного переполнение буфера сложнее, чем стек на основе? Кроме того, в чем разница между ними? Я знаю, что память выделяется динамически в случае кучек, но что это?
abhishek bv
1

голосов
2

ответ
112

Просмотры

Высвобождение прямого буфера в Java и возможных подводных камнях

мы имеем следующий фрагмент кода: длинный буфер = ((DirectBuffer) ByteBuffer.allocateDirect (256)) адрес ();. Кажется, что нет ссылки на прямой буфер (как объект) в стеке потока. Таким образом, это означает, что этот объект является фантомным достижимо. DirectByteBuffer становится фантомным достижимы. Сборка мусора выполняется (в отдельном потоке), объект DirectByteBuffer Java, собирается и добавляется запись в ReferenceQueue. Уборщик нить достигнет этой запись и запускает регистрацию субботника (в данном случае, это java.nio.DirectByteBuffer.Deallocator объект), это действие, наконец, освобождает родную память. Цитирование приходит от: Java - Когда выпущен прямой буфер? Таким образом, вполне возможно, что выделенная память, которая может быть освобождена. Тем не менее, у нас есть указатель на что, буфер типа длиной. Поэтому вполне возможно, что у нас есть SIGSEGV или что-то в этом роде. Мой вопрос: Означает ли это, что мы можем повредить OURSELF используя DirectBuffer в такой манере?
Gilgamesz
1

голосов
1

ответ
66

Просмотры

Node.js readUIntBE ограничение произвольного размера?

Фоновый Читаем буфера с помощью Node.js буфера нативного API. Этот API имеет две функции, называемые readUIntBE и readUIntLE для Big Endian и Little Endian соответственно. https://nodejs.org/api/buffer.html#buffer_buf_readuintbe_offset_bytelength_noassert Проблема Читая документы, я наткнулся на следующие строки: byteLength Количество байт для чтения. Должен удовлетворять: 0 <byteLength
Flame_Phoenix
1

голосов
1

ответ
306

Просмотры

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

Упрощенный пример, который демонстрирует проблемы является #include INT основных (недействительными) {Е ( «Foo \ п»); fflush (стандартный вывод); GetChar (); возвращать 0; } (Это не программирование языка специфического, хотя - оригинальное приложение я обнаружил проблему с в Go). Если он компилируется и запускается следующим блоком: [Unit] Description = Описание После = network.target [Service] ExecStart = / путь / к / двоичный [Установить] WantedBy = multi-user.target затем на systemctl рестарт journald бы в в большинстве случаев не получают Foo \ п выход, в то время как системный журнал успешно записывает его в / вар / журнал / системный журнал. Вот пример вывода journald для службы: 18 мая 8:30:38 имени хоста Systemd [1]: Stopped ServiceName 18 мая 8:30:38 имени хоста Systemd [1]: Начало ServiceName 18 мая 8:30:38 имени хоста Systemd [1]: Остановились имя_служба 18 мая 8:30: 38 имя хоста Systemd [1]: Начало ServiceName 18 мая 8:30:38 имя хоста имя_службы [7701]: Foo 18 мая 8:30:41 имя хоста Systemd [1]: Stopped ServiceName 18 мая 8:30:41 имя хоста Systemd [1] : Начало ServiceName 18 мая 8:30:46 имя хоста Systemd [1]: Stopped имя_службы May 18 8:30:46 имя хоста Systemd [1]: Начало имя_службы, а затем соответствующая часть / вар / журнал / системного журнала: May 18 08 : 30: 38 имя хоста Systemd [1]: Stopped имя_службы. Май 18 8:30:38 имя хоста Systemd [1]: Начало имя_службы. Май 18 8:30:38 имя хоста имя_службы [7682]: Foo 18 мая 8:30:38 имя хоста Systemd [1]: Остановился имя_службы. Май 18 8:30:38 имя хоста Systemd [1]: Начало имя_службы. Май 18 8:30:38 имя хоста имя_службы [7701]: Foo 18 мая 8:30:41 имя хоста Systemd [1]: Остановился имя_службы. Май 18 8:30:41 имя хоста Systemd [1]: Начало имя_службы. 18 мая 8:30: 41 имя хоста имя_службы [7720]: Foo 18 мая 8:30:46 имя хоста Systemd [1]: остановленного SERVICENAME. Май 18 8:30:46 имя хоста Systemd [1]: Начало имя_службы. Май 18 8:30:46 имя хоста имя_службы [7739]: Foo Что бы способ гарантировать journald получил стандартный вывод, если таковые имеются?
zerkms
1

голосов
0

ответ
152

Просмотры

Подождите, пока IO буфер не будет полностью написана в GoLang

Я думаю, что я закрыл все правильно, так что не уверен, что здесь происходит ... Если я пишу в файл, он отлично работает BTW, удачи? Спасибо заранее, я провожу в последний вечер на это, и это сводит меня с ума :) EDIT: Код с обработки ошибок (f.Sync () на самом деле не удалось, и я удалил его) пакет основной импорт ( «bufio» «ОС») функ Основной () {е, ERR:! = os.Create ( "/ DEV / USB / lp0"), если допустить ошибку = ноль {паника (ERR)} отложить f.close () W: = bufio.NewWriter (е) _ ERR = w.Write ([] байт ( "\ x1B @")), если допустить ошибку! = ноль {паника (ERR)} _, эээ = w.WriteString ( "тото-1 \ п"), если допустить ошибку! = ноль { паника (ERR)} _, эээ = w.WriteString ( "тото-2 \ п"), если допустить ошибку! = ноль {паника (ERR)} _, эээ = w.WriteString ( "тото-3 \ п"), если допустить ошибку !
Thomas Heute
1

голосов
0

ответ
75

Просмотры

Почему Nginx имеет 8х 4k буферы вместо 1x 32k один?

Компьютерная архитектура мудрый, я смотрел в http://nginx.org/r/proxy_buffers, и по умолчанию устанавливается в восемь памяти страниц размера буфера. Это имеет смысл, если вы пытаетесь рационализировать это - если запрос будет вписываться в один буфер, зачем тратить лишнюю для него памяти - до тех пор, пока вспомнить слайд презентации ФОК на лаковом-кэше - СПЕЦИАЛЬНОЕ ПРЕДЛОЖЕНИЕ! - ПОЧТИ БЕСПЛАТНО ПАМЯТЬ - ПРЕДЛОЖЕНИЕ ХОРОШО с 1980 года. Таким образом, если память действительно практически свободна, почему Nginx есть установка с 8 страницами размером буферов по умолчанию, вместо того, чтобы просто имея один буфер 8 раз размера страницы? (Или в том, что, как это на самом деле обрабатывается под?)
cnst
1

голосов
0

ответ
58

Просмотры

Как отключить буферизацию в nodejs гнезд / потоках?

Я пытаюсь отключить механизмы буферизации, по умолчанию, присутствующие в «HTTP» и / или «запрос» модулей для того, чтобы иметь в режиме реального времени поступает поток. Простое представление о том, что я хочу достичь, это: вар сервер = http.createServer (функция (Req, соответственно) {пусть newReq = запрос ( ""); req.pipe (newReq); newReq.pipe (соответственно); REQ. connection.setNoDelay (истина); resp.connection.setNoDelay (истина);} Как вы можете видеть, что я пробовал setNoDelay (правду), но она по-прежнему буфера и есть задержка в ответ поток Спасибо за вашу помощь заранее..
user2366867
1

голосов
0

ответ
25

Просмотры

Загрузить массив в ОПЗ

Я знаю, как загрузить файл в ОПЗ, но что, если я хочу, чтобы загрузить простой JS массив строк? она возвращает неизвестный файл, и я не могу видеть это содержание вар bufferFile = Buffer.Buffer.from (uuidArray); ipfs.files.add (bufferFile, (ошибка, результат) => {console.log (результат [0] .hash);})
O. Shekriladze
1

голосов
1

ответ
120

Просмотры

Three JS - Retain objects depth from camera.layers(1) when rendering camera.layers(0)

Я создаю сцену с центром объекта и 6 кубиков с плавающими вокруг него, я также использовал эффект цветения после обработки через всю сцену, но теперь я уже был поставлен задача изменить код так, что только центральный объект имеет эффект цветения на нем, с кубы, оказываемые в обычном режиме. Я наткнулся на концепции использования camera.layers и, казалось, работали сначала с налетом только влияющие на объект в центре, пока я не вращался вокруг немного и понял, что я потерял глубину центра объекта, так кубы Теперь вращаются в передней части центрального объекта. Похоже, это Вот решение, что я нашел: https://discourse.threejs.org/t/solved-effectcomposer-layers/3158/3 Вот мой цикл рендеринга: this._renderer.clear (); this._sceneLights.directionalLight.layers.set (1); this._sceneLights.ambientLight.layers.set (1); этот. _camera.layers.set (1); this._effectComposer.render (); this._renderer.clearDepth (); this._sceneLights.directionalLight.layers.set (0); this._sceneLights.ambientLight.layers.set (0); this._camera.layers.set (0); this._renderer.render (this._scene, this._camera); Также у меня есть this._renderer.autoClear = ложь; И centreMesh.layers.set (1); Я пришел через несколько вариантов предполагая, используя 2 сцены, но я не знаю, если проблема глубины будет по-прежнему сохраняется, что делать? Решение camera.layers было так близко к тому, что я хотел, а Есть ли способ, чтобы сохранить глубину центра объекта между слоями? PS Я знаю, что я очистка буфера глубины, но я должен иначе кубики не отображаются / визуализации, я просто интересно, если есть способ, чтобы сохранить глубину и, возможно, применять его снова после нормального рендеринга? this._effectComposer.render (); this._renderer.clearDepth (); this._sceneLights.directionalLight.layers.set (0); this._sceneLights.ambientLight.layers.set (0); this._camera.layers.set (0); this._renderer.render (this._scene, this._camera); Также у меня есть this._renderer.autoClear = ложь; И centreMesh.layers.set (1); Я пришел через несколько вариантов предполагая, используя 2 сцены, но я не знаю, если проблема глубины будет по-прежнему сохраняется, что делать? Решение camera.layers было так близко к тому, что я хотел, а Есть ли способ, чтобы сохранить глубину центра объекта между слоями? PS Я знаю, что я очистка буфера глубины, но я должен иначе кубики не отображаются / визуализации, я просто интересно, если есть способ, чтобы сохранить глубину и, возможно, применять его снова после нормального рендеринга? this._effectComposer.render (); this._renderer.clearDepth (); this._sceneLights.directionalLight.layers.set (0); this._sceneLights.ambientLight.layers.set (0); this._camera.layers.set (0); this._renderer.render (this._scene, this._camera); Также у меня есть this._renderer.autoClear = ложь; И centreMesh.layers.set (1); Я пришел через несколько вариантов предполагая, используя 2 сцены, но я не знаю, если проблема глубины будет по-прежнему сохраняется, что делать? Решение camera.layers было так близко к тому, что я хотел, а Есть ли способ, чтобы сохранить глубину центра объекта между слоями? PS Я знаю, что я очистка буфера глубины, но я должен иначе кубики не отображаются / визуализации, я просто интересно, если есть способ, чтобы сохранить глубину и, возможно, применять его снова после нормального рендеринга? _renderer.clearDepth (); this._sceneLights.directionalLight.layers.set (0); this._sceneLights.ambientLight.layers.set (0); this._camera.layers.set (0); this._renderer.render (this._scene, this._camera); Также у меня есть this._renderer.autoClear = ложь; И centreMesh.layers.set (1); Я пришел через несколько вариантов предполагая, используя 2 сцены, но я не знаю, если проблема глубины будет по-прежнему сохраняется, что делать? Решение camera.layers было так близко к тому, что я хотел, а Есть ли способ, чтобы сохранить глубину центра объекта между слоями? PS Я знаю, что я очистка буфера глубины, но я должен иначе кубики не отображаются / визуализации, я просто интересно, если есть способ, чтобы сохранить глубину и, возможно, применять его снова после нормального рендеринга? _renderer.clearDepth (); this._sceneLights.directionalLight.layers.set (0); this._sceneLights.ambientLight.layers.set (0); this._camera.layers.set (0); this._renderer.render (this._scene, this._camera); Также у меня есть this._renderer.autoClear = ложь; И centreMesh.layers.set (1); Я пришел через несколько вариантов предполагая, используя 2 сцены, но я не знаю, если проблема глубины будет по-прежнему сохраняется, что делать? Решение camera.layers было так близко к тому, что я хотел, а Есть ли способ, чтобы сохранить глубину центра объекта между слоями? PS Я знаю, что я очистка буфера глубины, но я должен иначе кубики не отображаются / визуализации, я просто интересно, если есть способ, чтобы сохранить глубину и, возможно, применять его снова после нормального рендеринга? _sceneLights.ambientLight.layers.set (0); this._camera.layers.set (0); this._renderer.render (this._scene, this._camera); Также у меня есть this._renderer.autoClear = ложь; И centreMesh.layers.set (1); Я пришел через несколько вариантов предполагая, используя 2 сцены, но я не знаю, если проблема глубины будет по-прежнему сохраняется, что делать? Решение camera.layers было так близко к тому, что я хотел, а Есть ли способ, чтобы сохранить глубину центра объекта между слоями? PS Я знаю, что я очистка буфера глубины, но я должен иначе кубики не отображаются / визуализации, я просто интересно, если есть способ, чтобы сохранить глубину и, возможно, применять его снова после нормального рендеринга? _sceneLights.ambientLight.layers.set (0); this._camera.layers.set (0); this._renderer.render (this._scene, this._camera); Также у меня есть this._renderer.autoClear = ложь; И centreMesh.layers.set (1); Я пришел через несколько вариантов предполагая, используя 2 сцены, но я не знаю, если проблема глубины будет по-прежнему сохраняется, что делать? Решение camera.layers было так близко к тому, что я хотел, а Есть ли способ, чтобы сохранить глубину центра объекта между слоями? PS Я знаю, что я очистка буфера глубины, но я должен иначе кубики не отображаются / визуализации, я просто интересно, если есть способ, чтобы сохранить глубину и, возможно, применять его снова после нормального рендеринга? И centreMesh.layers.set (1); Я пришел через несколько вариантов предполагая, используя 2 сцены, но я не знаю, если проблема глубины будет по-прежнему сохраняется, что делать? Решение camera.layers было так близко к тому, что я хотел, а Есть ли способ, чтобы сохранить глубину центра объекта между слоями? PS Я знаю, что я очистка буфера глубины, но я должен иначе кубики не отображаются / визуализации, я просто интересно, если есть способ, чтобы сохранить глубину и, возможно, применять его снова после нормального рендеринга? И centreMesh.layers.set (1); Я пришел через несколько вариантов предполагая, используя 2 сцены, но я не знаю, если проблема глубины будет по-прежнему сохраняется, что делать? Решение camera.layers было так близко к тому, что я хотел, а Есть ли способ, чтобы сохранить глубину центра объекта между слоями? PS Я знаю, что я очистка буфера глубины, но я должен иначе кубики не отображаются / визуализации, я просто интересно, если есть способ, чтобы сохранить глубину и, возможно, применять его снова после нормального рендеринга?
HazeyAce
1

голосов
0

ответ
103

Просмотры

потеря точности глубины буфера на прошивке

Я делаю глубины пилинг с очень простой функцией фрагмента: структура VertexOut {float4 положения [[положение]]; }; Фрагмент пустоты depthPeelFragment (VertexOut в [[stage_in]], depth2d previousDepth) {float4 р = in.position; если (! is_null_texture (previousDepth) && рх
Taylor
1

голосов
0

ответ
77

Просмотры

Создать Numpy массив из существующих ctypes.c_void_p

Я хотел бы создать numpy.darray именно в том месте, где указатель ctypes.c_void_p который указывает. buffer_ = ctypes.c_void_p () # волшебно пусть точка API в специальную ячейку памяти numpy_buffer_ = numpy.ndarray (форма, DTYPE = DTYPE, буфер = buffer_) Тем не менее, я получаю ошибку: TypeError: буфер слишком мал для запрошенный массив, который я получил общее представление о том, чтобы решить эту проблему, как это из другого потока, где она используется немного по-другому: numpy.ndarray (форма, DTYPE = DTYPE, буфер = c_void_p.from_address (адрес)) Однако, как у меня уже есть c_void_p указывает на правильный адрес, я надеялся, что я мог бы использовать его. Любые идеи, почему мой буфер оказывается слишком мал? (Это также не работает, если я ставлю маленькую форму на мой ndarray) Лучший, gbrown
G.Brown
1

голосов
0

ответ
150

Просмотры

Реагировать-Native буфер глобальный не существует, пожалуйста, рассмотреть вопрос об использовании

У меня есть реагировать родной проект. Я не знаю, почему иногда «буфера глобальными не существует, пожалуйста, рассмотрите возможность использования» появляется на экране. но когда я НАЯ установка и пряжа установки она исчезнет. сегодня я не знаю, почему НАЯ установки и пряжа метод установки не может исчезнуть этот красный экран.
Nick Leong
1

голосов
0

ответ
53

Просмотры

UDP: сомнения по поводу записи () и сокетов тайм-аут (SO_SNDTIMEO), когда буфер сокета полон

У меня возникли некоторые проблемы с пониманием того, как сокет буфера и таймауты управляются под Linux, при использовании протокола UDP. Я использую OpenWrt встроенный дистрибутив с ядром версии 4.14.63. Для того, чтобы лучше понять эти концепции, я пытаюсь анализировать код, который используется клиентом открытой программы измерений сети источника Iperf, при отправке UDP-пакетов для проверки таких параметров, как достижимые пропускная способность. Она написана на C и C ++. В частности, я попытался установить предлагаемую величину трафика гораздо выше, к тому, что сеть (и, следовательно, Yhe приемник) может обеспечить получение, как и ожидалось определенной потери пакетов. В этом случае, благодаря Iperf вычислительному времени цикла после передачи каждого пакета, используя метки времени, я был в состоянии оценить, сколько времени приложения потребовалось, чтобы написать каждый пакет в буфер UDP. Пакеты фактически записываются внутри, а () петли, который вызывает запись () на сокет для каждого из них. Тайм-аут также устанавливается, когда, на сокете по телефонам: setsockopt (mSettings-> mSock, SOL_SOCKET, SO_SNDTIMEO (символ *) и тайм-аут, SizeOf (тайм-аут)) Это должно установить тайм-аут отправки при записи в сокет, который конечно, блокирующий один. Когда буфер заполнен, вызов записи () блокирует, и я могу видеть время цикла увеличивается много; Проблема в том, что я не могу понять, за сколько времени этот вызов блокирует приложение. В общем случае, когда запись () блокируется, это разблокирование так же, как есть место для нового пакета? Или это больше ждать (как это, кажется, случается, насколько я смог понять, пытаясь установить «большой» значение буфера UDP (800 KB, при передаче UDP датаграммы с B полезной нагрузкой 1470), кажется, ждать около 700 мс, позволяя буфер получить опустели, с помощью сетевого стека, который непрерывно посылающего данные для более чем пространство один пакет потребует)? Зачем? Другие сомнения у меня связано с тайм-аут: Я попытался сделать небольшие изменения в исходный код для входа возвращаемого значения каждого вызова записи (), и я имел возможность наблюдать, что никаких ошибок не всегда ecountered, даже при установке Тайм-аут 300 мс или 600 мс, что меньше, чем значение 700 мс наблюдалось раньше. По протоколирования также эволюции буфера (вместе с временем цикла в каждой пакетной передачи), благодаря IOCTL: IOCTL (mSettings-> mSock, TIOCOUTQ, & BUFSIZE); Я был в состоянии заметить, однако, что установка времени ожидания до 300 мс или 600 мс фактически сделал разницу, и сделал блокирующую запись (), подождите около 300 мс, в первом случае, или 600 мс, во втором случае, как обнаруживается полный буфер. Таким образом, даже если ошибки не обнаружены, то тайм-аут, кажется, на самом деле истекает; это, однако, по-видимому, приведет к правильной операции записи во всех случаях. Это возможно? Может ли случиться, потому что запись () заблокировала приложение для достаточно времени, чтобы она полностью записать данные, когда истекает время ожидания? Я немного запутался об этом. Заранее большое спасибо. ма немного запутался об этом. Заранее большое спасибо. ма немного запутался об этом. Заранее большое спасибо.
es483
1

голосов
1

ответ
174

Просмотры

Буфер из ArrayBuffer с копией памяти

Я переключение с Node.js 8.X на Node.js 10.x, и я получаю некоторые устаревшие предупреждения о «новом буфере» У меня есть ArrayBuffer, что мне нужно скопировать в буфер и моей первой версии было так : Const newBuffer = Buffer.from (myArrayBuffer) Но ArrayBuffer не копируется в этом случае (https://nodejs.org/api/buffer.html#buffer_class_method_buffer_from_arraybuffer_byteoffset_length), так что мои данные испорченного в некоторых случаях, когда я имею в виду в буфер в asychronous кода, так что я переключился на: Const newBuffer = новый буфер (Buffer.from (myArrayBuffer)) он работает, но я получаю предупреждение с Node.js 10.XI сделал это, но не уверен, что это лучший способ для достижения этой сопзЬ newBuffer = Buffer.alloc (myArrayBuffer.byteLength) Const abView = Buffer.from (myArrayBuffer) abView.copy (newBuffer)
Nico AD
1

голосов
0

ответ
34

Просмотры

WebSocket передачи файлов IndexOutOfBoundsException (переполнение буфера)

Перенос файлов меньшего размера можно без каких-либо проблем, но когда я использую большие файлы сокет становится неактивным и закрывается причиной 1006. Нетти бросает следующее исключение: https://hastebin.com/paxibawuco.bash (IndexOutOfBoundsException) правильно переполнение буфера. Так как я использую LengthFieldBasedFrameDecoder эта ошибка не должна появляться .. Она также работает отлично с таймером 500мс между каждым пакетом посланного. @Override защищенного недействительный initChannel (SocketChannel канал) {ChannelPipeline труба = channel.pipeline (); pipe.addLast (ssl.newHandler (channel.alloc ())); pipe.addLast (новый HttpServerCodec ()); pipe.addLast (новый HttpObjectAggregator (64 * 1024)); pipe.addLast (новый WebSocketServerProtocolHandler ( "/ WebSocket")); pipe.addLast (новый LengthFieldBasedFrameDecoder (64 * 1024, 0, 4, 0, 4)); труба. addLast (новый FrameDecoder ()); pipe.addLast (новый LengthFieldPrepender (4)); pipe.addLast (новый FrameEncoder ()); pipe.addLast (новый ServerHandler ()); } Есть ли способ перенося файлы ломтики без блокировки нити или отправок пакетов с задержкой?
Felix Gaebler
1

голосов
0

ответ
75

Просмотры

Есть ли способ, чтобы иметь дело с последовательностью битов в C ++

Я пытаюсь написать очень эффективный класс C ++, который определяет новый тип с плавающей запятой с гораздо большей точностью, чем примитивные типы данных. Смотрите мой предыдущий пост для более фона. Для начала я использую статическое распределение в моем hp_float.hpp: класс hp_float {личное: неподписанный символ БУФЫ [48]; общественности: hp_float (); hp_float оператор + (Const hp_float & ч); }; Моя проблема заключается в том, что, в конце концов, для того, чтобы реализовать этот оператор + я буду иметь, чтобы использовать побитовые операции, включая>. Я видел, что это может быть сложно с этими буферами, как видно на этом посту SO. Я хотел бы сделать переход без необходимости цикла. Я мог бы вручную раскатать его в моей реализации, но в конечном счете, я хочу, чтобы рассматривать буфер в виде непрерывной последовательности бит, как и любого другого примитивного типа данных: hp_float hp_float :: оператор + (сопзИте hp_float & з) {[тип ???] this_sign = ЬиЕ >> (48 * 8-1); ...} Мой вопрос: возможно ли это нет? Есть ли у какого-либо совет один делает то, что я хочу с лучшей производительностью?
redmoncoreyl
1

голосов
1

ответ
25

Просмотры

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

Есть ли способ, чтобы очистить только последний выход из терминала? Я уже прочитал Как очистить предыдущий вывод в терминал в Mac OS X? но очищает весь терминал (CMMD + K) Я хочу этого, потому что говорю, я закончу, глядя на что-то, но это занимает все мое пространство экрана, и я хочу, чтобы избавиться от этого, но не всех предыдущих выходов
Honey
1

голосов
0

ответ
27

Просмотры

Наиболее эффективный способ превратить массив UInt8Array в ArrayBuffer?

Я потоковый файл из бекенда КПГР к моему яваскрипту клиенту. Поток посылает серию объектов UInt8Array. Я хочу, чтобы объединить эту серию UInt8Array в один ArrayBuffer (т.е. ArrayBuffer исходного файла). Как я могу это сделать?
StillFiles2
1

голосов
0

ответ
27

Просмотры

Можно ли уменьшение масштаба глубины текстуры на металл?

Я хочу, чтобы уменьшение масштаба глубины текстуры половины его ширины и высоты, а затем приложить к меньшему визуализации буфера для продолжить рендеринг. MTLPixelFormatDepth32Float только для чтения формат вычислительными шейдерами. Интересно, если какой-либо из тех, возможны: Blit от R32 до Depth32 MPSImageLanczosScale с Depth32 Или, может быть, есть другое решение?
SAKrisT
1

голосов
0

ответ
22

Просмотры

Python не может найти подстроку, что я могу видеть в переполнении EIP

У меня есть сценарий, который я использую для автоматизации и понять Fuzzing приложений. Я бег vulnserver и Fuzzing, чтобы найти точку, в которой стек переполняется, а затем генерировать уникальную строку, которая затем будет отправлена ​​снова, чтобы найти в какой момент быть переписывается EIP. Проблема, что у меня есть, что я решил, что переполнение происходит, когда первоначальный набор 2100 Аза отсылается. Оттуда я генерации цепочки последовательных символов с ниже сценарий, отрывок ... Aa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2 Проблема заключается в том, что, когда EIP переписывается ниже, я не могу найти строку EIP в созданном шаблоне Looking для строки ... pattern.find (eip_string) EIP значение asciie: 8qC7 при запуске в IDLE я могу видеть, что это найти существующую строку, а возвращает -1 для тех, кто не может найти / не существует. str.find (» AA0 «) 0 str.find (» 8qC7 «) -1 str.find (» Foo бар ') -1 Является ли проблема с тем, как я генерируя строку или что-то еще с тем, как механики языка Python? Как я могу это исправить, так что я могу найти шаблон EIP в основной строке? производящий Метод шаблон ... Ссылка на проект / методу на GitHub DEF create_pattern (самость, длина): index_up, index_down, int_index = 0, 0, 0 = int_list список (диапазон (0, 10)) int_limit = Len (int_list) -1 # 9 char_list = string.ascii_lowercase char_limit = Len (char_list) -1 # 25 модели = '' в то время как Len (шаблон) <длина: если int_index char_limit: index_up = 0 self.pattern = возврат шаблон Краткое описание модели выпуск I сгенерировали длинная непоследовательная строка.
Rich C
1

голосов
1

ответ
797

Просмотры

C ++ / CLI эффективный многопоточный кольцевой буфер

У меня есть четыре потоков в C ++ / CLI GUI Я разрабатываю: Собирает исходные данные ГИП сами Процессинговый фонового поток, который берет куски исходных данных и производит полезную информацию действуют как контроллер, который соединяет три другие темы, я получил сырье для сбора данных, работая и размещение результатов на контроллер, но следующий шаг, чтобы сохранить все эти результаты так, что графический интерфейс и фон процессор имеет доступ к ним. Новые исходные данные подаются в один результат, в то время регулярно (часто) интервалами. Графический интерфейс пользователя будет доступ к каждому новому элементу, как она поступает (контроллер объявляет новые данные, и графический интерфейс затем обращается к общему буфера). Процессор данных будет периодически читать кусок буфера (а секунды на сумму, например) и производить новый результат. Так эффективно, есть один производитель и два потребителя, которые нуждаются в доступе. Я' ве охотились вокруг, но ни один из CLI поставляемого материала звучит все, что полезно, поэтому я рассматриваю прокатки мои собственные. Общий кольцевой буфер, который позволяет написать замки для коллектора и блокировки чтения для графического интерфейса и данных процессора. Это позволит несколько потоков читать данные до тех пор, как эти участки буферов не записываются. Так что мой вопрос: Есть ли простые решения в библиотеках .net, которые могли бы достичь этого? Могу ли я с умом для рассмотрения прокатки самостоятельно? Есть ли лучший способ сделать это? Так что мой вопрос: Есть ли простые решения в библиотеках .net, которые могли бы достичь этого? Могу ли я с умом для рассмотрения прокатки самостоятельно? Есть ли лучший способ сделать это? Так что мой вопрос: Есть ли простые решения в библиотеках .net, которые могли бы достичь этого? Могу ли я с умом для рассмотрения прокатки самостоятельно? Есть ли лучший способ сделать это?
Jon Cage
1

голосов
1

ответ
697

Просмотры

Что такое буфер записи?

Может кто-нибудь помочь мне понять, что буфер записи есть? Я особенно заинтересован в изучении его функции в системах контекст базы данных, скажем, MySQL! Некоторые из перечисленных ниже будет полезно: Какова цель буфера записи Есть ли какие-либо преимущества производительности Пример из буфера записи в базе данных приложения я наткнулся на этот термин несколько раз, и я не смог разглядеть его смысл. Спасибо
Mohamad
1

голосов
2

ответ
109

Просмотры

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

У меня есть проблема с одной из моих программ, в которых ошибка переполнения буфера вдруг появилась после того, как я добавил еще несколько функций программы. Ошибка появилась в самом начале программы, в разделе, который был совершенно не связан с новым кодом я добавил. После размещения вниз пары контрольных точек, чтобы сузить источник ошибки, ошибка исчезла при следующем запуске. Может кто-нибудь просто концептуально объяснить мне, какие ситуации могут причину проблемы я столкнулся? Я не прошу вас отлаживать код, но скорее дать мне некоторое представление о том, что, возможно, происходит таким образом, я могу избежать нарваться проблемы снова.
Faken
1

голосов
1

ответ
2.2k

Просмотры

Passing parameters to the constant buffer in SlimDX Direct3D 11

this is related to Setting up the constant buffer using SlimDX I have a shader, which is very simple and looks like this: cbuffer ConstantBuffer : register(b0) { float4 color; } float4 VShader(float4 position : POSITION) : SV_POSITION { return position; } float4 PShader(float4 position : SV_POSITION) : SV_Target { return color; } All it does is apply the color passed in via the constant buffer to every pixel drawn, very simple. In my code I define my constant buffer as follows: [StructLayout(LayoutKind.Explicit)] struct ConstantBuffer { [FieldOffset(0)] public Color4 Color; } And set it here, in my render loop. ConstantBuffer cb = new ConstantBuffer(); cb.Color = new Color4(Color.White); using (DataStream data = new DataStream(Marshal.SizeOf(typeof(ConstantBuffer)), true, true)) { data.Write(cb); data.Position = 0; D3D.Buffer buffer = new D3D.Buffer(device,data, new BufferDescription { Usage = ResourceUsage.Default, SizeInBytes = Marshal.SizeOf(typeof(ConstantBuffer)), BindFlags = BindFlags.ConstantBuffer }); context.UpdateSubresource(new DataBox(0, 0, data), buffer, 0); } context is my device.ImmediateContext and device is my Direct3D device. However when it runs, it draws my pixels as black, despite having passed through the color white, so clearly the value isn't being set. Anybody have any ideas?
Nick Udell
1

голосов
1

ответ
1.2k

Просмотры

C ++: Доступ к элементам Карты струнных и бустер Круговые Буфера

Я пишу программу, которая считывает текстовый файл с названиями городов в вектор, а затем использует СТЛО :: карту ассоциировать каждый город с повышающим кольцевым буфером. У меня также есть вектор температурных данных, которые я преобразован в двойной тип после прочтения его как строки из другого текстового файла. Я хочу знать, как кормить эти данные в кольцевой буфер моего выбора. Например, данные о температуре от Бостона, поэтому я хочу, чтобы поместить его в кольцевой буфер, связанный с Бостоном. Если кто-то может показать мне, как это сделать, я бы очень признателен! Вот мой код. Код, имеющий дело с картами находится вблизи дна. #include <карта> #include <алгоритм> #include <cstdlib> #include <fstream> #include <iostream> #include <итератор> #include <stdexcept> #include <строка> #include <sstream> #include <вектор> #include <полезность> #include <подталкивание / circular_buffer.hpp> двойной StrToDouble (станд :: строка сопзЬ & s) // функция для преобразования строки векторов в два раза. {Станд :: istringstream ISS (с); двойное значение; если бросить станд :: runtime_error ( "недействительна двойной") ((ISS >> значение!)); возвращаемое значение; } С помощью патезраса; ИНТ основной () {станд :: fstream fileone ( "tempdata.txt"); // считывание данных температуры в вектор. станд :: строка х; вектор datastring (0); в то время как (GetLine (fileone, х)) {datastring.push_back (х); } Vectordatadouble; станд :: преобразование (datastring.begin (), datastring.end (), станд :: back_inserter (datadouble), StrToDouble); // преобразование его в два раз с помощью функции зОго :: fstream filetwo ( «cities.txt»); // чтение городов в вектор. станд :: строка у; вектор город (0); в то время как (GetLine (filetwo, у)) {cities.push_back (у); } карта cities_and_temps; // создание карты, чтобы связать каждый город с кольцевым буфером. для (беззнаковое INT I = 0; я <cities.size (); я ++) {cities_and_temps.insert (make_pair (cities.at (I), новый импульс :: circular_buffer (32))); } Возвращает 0; }
siegel
1

голосов
4

ответ
635

Просмотры

Как отправить заголовок клиенту до выполнения сценариев PHP

Как отправить заголовок клиенту до выполнения сценариев PHP? Мой сценарий займет много времени, чтобы закончить и клиент не получает ничего в течение этого периода.
faressoft
1

голосов
1

ответ
274

Просмотры

Как я могу прочитать большое целое число из буфера в Integer в прошивке?

Я с трудом получает целое число из буфера в прошивке. Чтобы прочитать строку, я использую: выход = [[NSString Alloc] initWithBytes: буфер Длина: Len кодирование: NSASCIIStringEncoding]; Но, кажется, не быть эквивалентным initWithBytes для целых чисел. Заранее спасибо, Дэйв
user867358
1

голосов
1

ответ
377

Просмотры

When using Context3DVertexBufferFormat.BYTES_4, what is the value range of one field?

Если я заполнить вершину-буфер с использованием методы байт-массив: // Пример: вар ба: ByteArray = новый ByteArray (); // Записываем вершина # 0: ba.writeFloat (-. 5); ba.writeFloat (- 5.); ba.writeUnsignedInt (0); ba.writeUnsignedInt (0); // Записываем вершина # 1: ba.writeFloat (0,5); ba.writeFloat (- 5.); ba.writeUnsignedInt (1); ba.writeUnsignedInt (0); // Записываем вершина # 2: ba.writeFloat (0,5); ba.writeFloat (0,5); ba.writeUnsignedInt (1); ba.writeUnsignedInt (1); // Записываем вершина # 3: ba.writeFloat (-. 5); ba.writeFloat (0,5); ba.writeUnsignedInt (0); ba.writeUnsignedInt (1); myVertexBuffer.uploadFromByteArray (ба, 0, 0, 4); А затем установить атрибут вершинного буфера в следующем формате: формат Var: String = Context3DVertexBufferFormat.BYTES_4; context3D.setVertexBufferAt (0, myVertexBuffer, 0, формат); Каков диапазон значений возможно (от 0 до 255? 0,0 до 1,0? И т.д. ) Для поля атрибута Vertex (в данном случае, va0.x, va0.y, va0.z, va0.w)? Имеет ли различаются между которыми тип данных записывается в объект ByteArray (writeFloat против writeUnsignedInt)?
bigp
1

голосов
1

ответ
165

Просмотры

Есть ли аннулированию glBindBuffer предыдущие Gl * звонки Pointer?

Я хотел бы работать мой код, как это: glVertexPointer (3, GL_FLOAT, SizeOf (Vertex), (GLvoid *) offsetof (Vertex, Position)); glColorPointer (4, GL_UNSIGNED_BYTE, SizeOf (Vertex), (GLvoid *) offsetof (Vertex, цвет)); для (/ * каждый буфер * /) {glBindBuffer (GL_VERTEX_ARRAY, буфер); glDrawArrays (GL_TRIANGLE_STRIP Полоса, 0, buffer_size); } Это будет работать? Или мне нужно позвонить Gl * Указатель для каждого буфера?
1

голосов
1

ответ
1.2k

Просмотры

Буфер выполнение сохраненного заявления, используя Ctrl + C

Я пытаюсь сделать это заявление - в каком-то этапе - сохраняет все операторы скопированное по CTRL + C, и манипулирования «буфер», несущим текущую инструкцию на конкретный пример заявления: пользователь нажал CTRL + C, чтобы скопировать «Привет ", если он нажимает CTRL + V в любой текст области / поле написанное слово было бы„Привет“, я хочу письменное заявление, чтобы быть„Test“вместо„Привет“вопрос: как получить доступ к буфер проведения скопированный заявление и манипулировать его содержимое с помощью Java?
a.u.r
1

голосов
2

ответ
226

Просмотры

зсапЕ получает ввод ранее GetChar того или иную строчку ()

Я использую GetChar () для того, чтобы читать символы и положил их на стол, а также зсапЕ для того, чтобы получить целое число. Проблема с зсапом () является то, что он не ожидает ввод доступа пользователей, но читает из буфера последнего символа дан на предыдущей строке, с GetChar (). Я попытался sscanf, fflush (STDIN); и т.д., но я получаю еще такое же поведение. #include #include основной () {Int я, выбор, tmp_day, tmp_month; символ имени [5]; Е ( "вставка выбор (1-3): \ п"); зсапЕ ( "% d", & выбор); Е ( "Имя:"); для (я = 0; я
Chris
1

голосов
1

ответ
288

Просмотры

(J2ME) Поток в качестве буфера?

Здесь я получил J2ME приложение и мне нужно передать или сохранить текущие данные из выходного потока. Что может случиться, если я использую один поток для записи данных в поток и после того, как не писать наверняка не OFL байт другого потока, чтобы получить ByteArray из него сохранить или передать его и сбросить поток до нуля .. Т.е. призывающего сброса на него .. Это фактически равно используя поток в качестве буфера фиксированного размера .. для Ограничить здесь является то, что я не могу быть в состоянии использовать объект ByteBuffer для этой цели будет, что делает поток недействительным, так как первая нить еще проводку к нему?
Allahjane
1

голосов
2

ответ
2.4k

Просмотры

Arduino: UDP отправки дает дополнительные символы

На данный момент у меня есть плата Arduino с Ethernet Shield подключен к маршрутизатору. Мой компьютер подключается к этому маршрутизатору через Wi-Fi. Мой совет, и мой компьютер отправлять сообщения UDP назад и вперед друг к другу. Мой компьютер является клиентом, и плата является сервером. Однако я заметил, что когда я отправить более длинное сообщение UDP с моего компьютера, а затем более короткое сообщение UDP, то Arduino принимает короткое сообщение, затем следуют остальные биты из более сообщения. Например: если я посылаю «Hello World» с моего компьютера, а затем с «Test»; Arduino не будет читать второе сообщение как «Test», а скорее: «Testo мир». Я думал, что, возможно, в была проблема с Arduino конец первого. Arduino хранит сообщения временно в массиве с именем packetBuffer. Я попытался очищая этот буфер, прежде чем я получу новое сообщение каждый раз. Буфер будет ясно, но тогда я получил бы неисправное сообщение. Таким образом, я предполагаю, что виновником является компьютер, клиент. На компьютере конце у меня есть эскиз обработки, который отправляет сообщения UDP. Приведенный ниже пример не сам эскиз; Однако это далеко более простой пример, который по-прежнему обеспечивает точные симптомы, как я описал с моим оригинальным эскизом. импорт hypermedia.net *. UDP UDP; // определить настройки объекта недействительной UDP () {УДПА = новый UDP (это, 6000); // Создание нового подключения датаграмм на порт 6000 //udp.log (истина); // Приведенный ниже пример не сам эскиз; Однако это далеко более простой пример, который по-прежнему обеспечивает точные симптомы, как я описал с моим оригинальным эскизом. импорт hypermedia.net *. UDP UDP; // определить настройки объекта недействительной UDP () {УДПА = новый UDP (это, 6000); // Создание нового подключения датаграмм на порт 6000 //udp.log (истина); // Приведенный ниже пример не сам эскиз; Однако это далеко более простой пример, который по-прежнему обеспечивает точные симптомы, как я описал с моим оригинальным эскизом. импорт hypermedia.net *. UDP UDP; // определить настройки объекта недействительной UDP () {УДПА = новый UDP (это, 6000); // Создание нового подключения датаграмм на порт 6000 //udp.log (истина); //
Nick Williams
1

голосов
1

ответ
1.3k

Просмотры

Fedora 17 и Google протокола Буферы [закрыт]

Кто-нибудь имел какие-либо проблемы компиляции буферов протокола с помощью GCC на Fedora 17? Я считаю, что я установил правильные пакеты Sudo ня установить Protobuf * Пожалуст protoc компилятор работает отлично, но сгенерированные файлы классы и заголовки не компилировать, когда я добавляю их к новому проекту. Есть идеи? Спасибо
tier1
1

голосов
1

ответ
528

Просмотры

copying data over in objective C from ring buffer in a thread safe manner

Я озадачен над результатом этого кода: В одном потоке я пишу в кольцевой буфер (см реализацию кольцевого буфера здесь): - (Недействительными) appendToRingBuffer: (Packet *) пакет {int32_t длина = ((PacketAudioBuffer * ) пакетов) .totalSize; пустота * writePointer; bytesAvailableToWrite = [ringBuffer lengthAvailableToWriteReturningPointer: & writePointer]; тетср (writePointer, [((PacketAudioBuffer *) пакеты) .audioBufferData байты], длина); [RingBuffer didWriteLength: длина]; // обновляет указатель головы кольцевого буфера} И в другом потоке, я читаю от него (и копирования данных склоняются переменная NSData): - (BOOL) readFromRingBuffer {пустота * readPointer; allBytesAvailable = [ringBuffer lengthAvailableToReadReturningPointer: & readPointer]; ringBufferReadData = [NSData dataWithBytes: readPointer Длина: allBytesAvailable]; [RingBuffer didReadLength: allBytesAvailable]; // чистки чтения данных из кольцевого буфера // сделать что-то с ringBufferReadData} хотя я скопировал значение к ringBufferReadData через [NSData: dataWithBytes: длина] и объявляя ringBufferReadData в @property (неатомическая, копию) NSData * ringBufferReadData; .. Я предполагается, что моя локальная копия ringBufferReadData не имеет ничего общего с кольцевого буфера, поэтому я не придется беспокоиться о порядке резьбы считывает и права на буфер нить .. однако .. получается, что после копирования данных ringBufferReadData, это значение меняется на другой поток писать в кольцевой буфер .. любая идея, как / почему и как обеспечить, чтобы это не произошло?
abbood
1

голосов
1

ответ
900

Просмотры

кодек декодирование AVFrames в буфер FIFO

Моя цель состоит в том, чтобы декодировать несколько кадров видеофайла, накапливают декодированные кадры в буфер FIFO и читать их позже. Я декодировать пакет на мой AVFRame mFrame: avcodec_decode_video2 (mCodecContext, mFrame, & frameFinished, & mPacket); Обычно я могу просто скопировать YUV кадры из mFrame-> данных [п] [0] в мой буфер FIFO, но я просто пытаюсь уменьшить тетсру «s как можно больше. Таким образом, вместо того, чтобы копировать mFrame-> данные [п] [0] Я просто хочу, чтобы сохранить mFrame (что намного меньше, чем кадры он указывает на) в буфере, и когда дело доходит до чтения, я могу просто взять его и достичь данные. Я пытался это сделать, но это не сработало. В AVFrames извлекается из буфера, но когда вы показать их на экране видео, как замороженные. Вы можете думать, что я использую тот же mFrame и перезаписывать его каждый раз, когда я декодировать пакет, но я не являюсь. Я создаю новый AVFrame * каждый раз в цикле декодирования. Является ли эта проблема, связанная с тем, как avcodec работает? Есть идеи? Благодаря микрофон
user1175197
1

голосов
1

ответ
153

Просмотры

Cannot display object from buffer

I am trying to initiate myself using Vertex Buffer with Index Buffer Object in JOGL by drawing a tetrahedron. I finished the code, with no error. But I can't find out why it's not displaying any triangle. Buffers are created just after the initialization of the renderer by calling the method createBuffers. Class attribute VBO and IBO (the very vertex/index buffer object) and other buffers (vert - vertex coordinates, col - colors values, ind - index of each triangle forming the tetrahedron) are initialized inside createBuffers by calling initDataBuffer. I've already tried to draw directly the triangles instead of using buffers using a for loop. Something like : for(int i=0;i
mhfff32
1

голосов
1

ответ
1.3k

Просмотры

Очистка буфера клавиатуры в Ada

Я написал функцию, чтобы очистить буфер клавиатуры, так как я думаю, что я имею оставшийся вход после получить, но это только принимая вход навсегда. вот прибудет (String (1..10) --getString10-- процедура getString10 (s: в из string10) является Последней: Integer; начать S: = (другие => ' «); Get_Line (S, фамилия); конец getString10, а вот флеш я сделал, в значительной степени скопирован с вики по очистке клавишных буферов --flush-- процедуры флеша является символ: символ, больше: логическое значения, начинает get_immediate петли (голец, более), выход, когда не более ; конец цикла, конец заподлицо;. Всякий раз, когда поток называется, что я типа выводится на экран, пока я не выйти из программы Кроме того, моя функция getString10 не всегда ждать ввода пользователя, например, если я поставил (». Введите имя: "); getString10 (имя), положим (" конец getString10; --flush-- процедура флаш символ: символ; больше: булево; начинают get_immediate петли (символ, больше); выход, когда не более; конец цикла; конец заподлицо; Пакет BST новый BinarySearchTree (String10, String10, "", "="); Корень, найдено: BST.BinarySearchTreePoint; выбор: целое число; nameTemp, phoneTemp: String10; начинают BST.setRoot (корень); петля NEW_LINE; put_line ( "Опции:"); put_line ( "1 - Включить запись"); put_line ( «2 - Найти человека итеративно и распечатать свой номер телефона»); put_line ( «3 - Найти человека рекурсивно и распечатать свой номер телефона»); put_line ( «4 - траверс дерева от человека к человеку»); put_line ( "0 - Выйти из программы"); ставить ( «Выберите вариант:»); получить (выбор); положим (выбор, 0); новая линия; Выбор случай --case 1 при 1 => поместить ( "Введите имя:"); получить (nameTemp); ставить (nameTemp); новая линия; ставить ( «Введите номер телефона:»); получить (phoneTemp); ставить (phoneTemp); новая линия; BST.InsertBinarySearchTree (корень, nameTemp, phoneTemp); --case 2 при 2 => поместить ( «Введите имя человека найти:»); получить (nameTemp); ставить (nameTemp); BST.FindCustomerIterative (корень, nameTemp, найдено); если BST.isNull (найдено), то NEW_LINE; ставить ( «Клиент не найден!»); еще NEW_LINE; ставить ( «Номер телефона:»); положим (BST.CustomerPhone (найдено)); конец, если; --case 3 при 3 => поместить ( «Введите имя человека найти:»); получить (nameTemp); ставить (nameTemp); BST.FindCustomerRecursive (корень, nameTemp, найдено); если BST.isNull (найдено), то NEW_LINE; put_line ( "Клиент не найден!"); еще NEW_LINE; ставить ( «Номер телефона:»); положим (BST.CustomerPhone (найдено)); конец, если; новая линия; --case 4 при 4 => поместить ( «Enter имени человека, чтобы начать обход на:»); получить (nameTemp); ставить (nameTemp); BST.FindCustomerRecursive (корень, nameTemp, найдено); положил("
user1279914
1

голосов
1

ответ
680

Просмотры

Обнаружение переполнения буфера в не с открытым исходным кодом программы

я читаю книгу о переполнении буфера эксплуатации и т.д. Но есть один вопрос, эта книга не суммируется и не отвечает. Как я могу dectect на переполнение буфера с помощью GDB, не видя исходный код программы? Можно ли обнаружить bufferflow глядя на сборку?
exxon

Просмотр дополнительных вопросов