avva: (Default)
[personal profile] avva
Грубер хорошо пишет в недавней записи (англ.) об окошках с новыми документами в любых приложениях. Нет в наше время никакой причины для того, чтобы данные терялись, если приложение упало или по какой-то причине убито. Сохранять надо все, что пишет (рисует, строит, что угодно) пользователь, в фоновом режиме, каждую минуту (например). Это касается "неназванных" еще документов в той же мере, как и существующих файлов.

Date: 2009-02-22 12:16 am (UTC)
From: [identity profile] lair.livejournal.com
Приложение, осуществляющее захват аудио-потока, как раз-таки более очевидно, чем текстовый редактор, должно сразу писать на диск — ему, в отличие от текстового редактора, может просто памяти не хватить.
Должно-то должно, но в реальности там все сложнее, и пишет оно всяко не в итоговый файл, а в scratch-буфер.

А что произойдёт, если после вставки даты и времени нажать undo и redo?
Вставка того же текста. Потому что операция "вставка даты" рассматривается undo-механизмом как вставка фиксированного текста.

Date: 2009-02-22 12:28 am (UTC)
From: [identity profile] salas.livejournal.com
не в итоговый файл, а в scratch-буфер.

Как это влияет на тот факт, что запись на диске таки хранится?

операция "вставка даты" рассматривается undo-механизмом как вставка фиксированного текста.

Именно. И где же во вставке фиксированного текста недетерминированность?

Date: 2009-02-22 12:32 am (UTC)
From: [identity profile] lair.livejournal.com
Как это влияет на тот факт, что запись на диске таки хранится?
Буфер частично в памяти находится.

И где же во вставке фиксированного текста недетерминированность?
Чтобы вставка даты стала вставкой фиксированного текста, нужно заменить одну операцию в очереди на другую. А это, в свою очередь, обозначает, что подход "пишем операции, которые производит пользователь (кнопки и мышь)" более не применим.

Date: 2009-02-22 12:38 am (UTC)
From: [identity profile] salas.livejournal.com
>А это, в свою очередь, обозначает, что подход "пишем операции, которые производит пользователь (кнопки и мышь)" более не применим.

Кто-то, кроме вас, в этом треде пользовался понятием операции, определяемой только вызвавшей её кнопкой?

Date: 2009-02-22 12:44 am (UTC)
From: [identity profile] lair.livejournal.com
"Сектор содержит от 512 до 4096 байт. Вполне достаточно для того, чтобы записать символ с клавиатуры или описание мазка кисти. [...] Мы говорим не о произвольном количестве событий, а о событиях, исходящих от пользователя." (http://avva.livejournal.com/2042868.html?thread=59115508#t59115508)

Произвольную операцию невозможно записать на диск за 8 мсек, которые обсуждаются выше по треду. Хотя бы на примере вставки из клипбоарда (кстати, тоже недетерминированная операция) - потому что если в клипбоарде лежит картинка мегов на 800, то скинуть ее на диск за 8 мсек (чтобы превратить операцию в "вставка фиксированной картинки") вряд ли представляется возможным.

Следовательно, одно из двух. Или 8 мсек на запись, о которых идет речь в этом треде, либо запись произвольной операции (а не только создаваемых пользователем событий от устройств ввода).

Date: 2009-02-22 01:02 am (UTC)
From: [identity profile] salas.livejournal.com
Вставка 800М из клипбоарда — это вообще операция не на 8 мс, есть такое. Приложения, для которых именно такая операция типична, действительно заслуживают отдельного разговора.
(deleted comment)

Date: 2009-02-22 09:21 am (UTC)
From: [identity profile] lair.livejournal.com
"Уважаемый [livejournal.com profile] lair" десять лет работает прикладным программистом. Я не учу вас проектировать ОС, я просто говорю, что в программе сделать гарантированное сохранение текущего состояния за 8мсек нельзя.

Date: 2009-03-26 05:02 pm (UTC)
From: [identity profile] os80.livejournal.com
О чём можно говорить с человеком, не прошедшим флюорографию? :-)

Date: 2009-02-22 09:10 am (UTC)
From: [identity profile] lair.livejournal.com
Мало того, что это операцие не на 8 мс сама по себе, так еще и ее логгирование - не на 8 мс.

А "такое приложение" - это любой адекватный растровый редактор.

January 2026

S M T W T F S
    1 2 3
45678910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 5th, 2026 10:11 am
Powered by Dreamwidth Studios