jQuery UI Datepicker - Отключите определенные дни

Поздние OnReadSample обратные вызовы возможны из-за многопоточной природы приложения и таких вызовов, инициируемых из рабочих потоков. В отличие от других примеров, которые для краткости кода срезают углы в реализации объекта обратного вызова, MFCaptureD3D реализует обратный вызов для класса CPreview с обычным подсчетом ссылок. Может быть поздний вызов CPreview::OnReadSample, а затем за ним следует вызов IMFSourceReaderCallback::Release, который, как ожидается, удалит экземпляр CPreview (если вы не ссылаетесь на него для других нужд).

Сказав это,

  • убедитесь, что с вашим счетчиком ссылок и управлением интерфейсом все в порядке
  • остановите захват, как вы уже сделали
  • будьте готовы чтобы иметь редкие поздние обратные вызовы
  • в вашем классе, которые принимают обратные вызовы, вы можете добавить флаг, указывающий состояние завершения, и установить его для немедленного возврата и ничего не делать, например здесь, в строке 189 ; когда вы останавливаете захват, установите также этот флаг в своем классе обратного вызова, чтобы игнорировать поздние вызовы
  • , в случае позднего обратного вызова ваш класс обратного вызова все еще имеет ссылку на интерфейс COM из API; флаг помощника защитит вас от совершения каких-либо вредных действий
  • вы можете проверить освобождение COM-интерфейса и удаление объекта обратного вызова в случае, если вы хотите быть уверенным, что дальнейший обратный вызов не поступит, но я бы сказал, что с предложенный флаг, который вам не нужно делать, так как ресурсы будут освобождены точно, хотя, возможно, с небольшой задержкой, вызванной многопоточностью

23
задан Community 23 May 2017 в 10:34
поделиться

3 ответа

Вы пытались правильно объявить natDays с ключевым словом 'var' впереди?

Кроме того - у вас есть лишняя запятая в конце определения natDays.

natDays [i] [2] не будет работать, так как ваши массивы содержат только 2 элемента - попробуйте просто ''

Кроме того, вы захотите правильно задать имя функции beforeShowDay - не похоже, он даже не вызывает вашу пользовательскую функцию

9
ответ дан 29 November 2019 в 02:28
поделиться

Проблема с IE, скорее всего, заключается в следующей строке:

altField: '#alternate',
}); 

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

1
ответ дан 29 November 2019 в 02:28
поделиться
beforeShowDay: $.datepicker.noWeekends,

будет

beforeShowDay: noWeekendsOrHolidays,
1
ответ дан 29 November 2019 в 02:28
поделиться
Другие вопросы по тегам:

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