У меня есть приложение Java Swing, которое имеет форму, которую я заполняю, сканируя штрих-код, содержащий данные с разделителями табуляции (или $ I), как ввод с клавиатуры через USB-соединение.Периодически текстовые поля формы заполняются неправильно, поэтому кажется, что вкладка обрабатывается слишком поздно.Например, если набор данных в штрих-коде похож на «abc $ Idef», ожидаемый результат будет «abc» в 1-м текстовом поле и «def» во 2-м текстовом поле.Вместо этого мы иногда видим «abcde» в 1-м текстовом поле и «f» во 2-м или даже все данные в 1-м текстовом поле и ничего во 2-м.
Я видел, что эта проблема проявляется по-разномуЧастоты в разные дни.Сегодня может быть хорошо, и я вижу, как это происходит 1 из каждых 150 попыток.Вчера это могло быть плохо, случалось 1 из 10 попыток.Сканер имеет заводские настройки по умолчанию или близкие к ним, за исключением того, что я переключил параметр для реализации разделителя табуляции и $ I.Я также пытался замедлить скорость передачи, и хотя это, по-видимому, уменьшает частоту событий, это не устраняет их, и замедленная скорость не идеальна для рабочего процесса пользователя, поэтому сбросьте его на полную скорость.
Я сомневаюсь, что проблема заключается в сканере, однако.в приложении я попытался отключить все проверки текстового поля и резервные копии данных, чтобы по существу удалить любой пользовательский код, который может вызвать некоторую задержку, но периодически возникающая проблема все еще существует.В настоящее время приложение работает на WinXPSP3 с использованием JRE 1.5.0_18.Сканер представляет собой модель Symbol ds6707.Я мог бы использовать некоторые рекомендации для дальнейшего изучения этой проблемы, чтобы определить, в чем проблема.