выключите ошибочный звук в xubuntu 17.04

Так как я обновил свой xubuntu до 17,04 (через-обновление-версии), я получаю шлепающийся звук для большого количества "невозможных" действий. Это является в масштабе всей системы и очень раздражающим, и я хочу избавиться от него. Никакие звуковые настройки даже НЕ СУЩЕСТВУЮТ в параметрах настройки системы.

Вот некоторые примеры, когда звук уходит:

  • когда я нажимаю стрелку влево в начале строки в любом текстовом редакторе
  • в Vimperator, когда я случайно пытаюсь перейти по несуществующей ссылке (использующий 'f' ключ)

Я не могу думать ни о чем больше, но этого достаточно для сведения меня с ума; это могло бы дать Вам общее представление.

Помогите очень ценивший. Спасибо, p

2
задан 3 May 2017 в 13:54

4 ответа

Я могу просто назвать MySW.Dispose () и пропустить Завершение даже при том, что это обеспечивается?

Да, это - то, для чего это.

Есть ли какие-либо Потоковые реализации, которые не работают как ожидалось (Как CryptoStream)?

Безопасно предположить это, если объект реализует IDisposable, это избавится от себя правильно.

Если бы это не делает, то это было бы ошибкой.

В противном случае затем следующее просто плохому коду:

Нет, тот код является рекомендуемым способом иметь дело с объектами та реализация IDisposable.

Более превосходная информация находится в принятом ответе, чтобы Закрыть и Расположить - чтобы звонить?

81
ответ дан 31 October 2019 в 03:21

Я смотрел в источнике .NET для Потокового класса, он имел следующее, которое предположит, что да Вы можете...

    // Stream used to require that all cleanup logic went into Close(),
    // which was thought up before we invented IDisposable.  However, we 
    // need to follow the IDisposable pattern so that users can write
    // sensible subclasses without needing to inspect all their base
    // classes, and without worrying about version brittleness, from a
    // base class switching to the Dispose pattern.  We're moving 
    // Stream to the Dispose(bool) pattern - that's where all subclasses
    // should put their cleanup starting in V2. 
    public virtual void Close() 
    {
        Dispose(true); 
        GC.SuppressFinalize(this);
    }

    public void Dispose() 
    {
        Close(); 
    } 
3
ответ дан 31 October 2019 в 03:21

Для объектов, которые должны быть вручную закрыты, каждое усилие должно быть приложено для создания объекта в блоке использования.

//Cannot access 'stream'
using (FileStream stream = File.Open ("c:\\test.bin"))
{
   //Do work on 'stream'
} // 'stream' is closed and disposed of even if there is an exception escaping this block
// Cannot access 'stream' 

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

3
ответ дан 31 October 2019 в 03:21

Как Daniel Bruckner упомянул, Расположите, и Близко эффективно то же самое.

Однако Поток НЕ называет Сброс (), когда он расположен/закрыт. FileStream (и я принимаю любой другой Поток с механизмом кэширования), действительно называет Сброс () при расположении.

Если Вы расширяете Поток или MemoryStream и т.д., который необходимо будет реализовать вызов для Сбрасывания (), когда расположил/закрыл, если это необходимо.

21
ответ дан 31 October 2019 в 03:21

Другие вопросы по тегам:

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