Проблема с рисованием в приложении Java Swing на Java 1.6

StackOverflow https://stackoverflow.com/questions/848481

  •  21-08-2019
  •  | 
  •  

Вопрос

Я работаю над приложением Swing (в настоящее время запущенным на Java 1.6 update 11), у которого есть некоторые проблемы с периодическим обновлением paint (напримересть артефакты и т.д.).Это происходит только с некоторыми пользователями нашего приложения, но не с другими.

Проведя некоторые исследования, я обнаружил, что установка свойства sun.java2d.d3d Для false может помочь, и на самом деле, это помогло одному из наших пользователей.

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

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

В чем именно заключается причина этого?Это из-за видеокарты?Это из-за водителя?Это ошибка от Sun?(например, http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6635462) Сочетание всех трех?

Другими словами, лучше всего просто отключить это свойство или оно влияет только на определенные видеокарты, в которых исправит обновление до последней версии драйвера?

Это было полезно?

Решение

Java представила в обновлении R6 10 конвейер, который визуализирует графику на основе Direct3D.Согласно описанию релиза здесь он поддерживает только карты NVidia и ATI, что означает, что у любого, кто не использует эти карты, могут возникнуть проблемы.Поскольку это недавнее нововведение, я бы предположил, что у любого, кто использует старые драйверы для этих карт, также могут возникнуть проблемы.Обновление видеодрайвера, вероятно, исправит первый случай, но не последний.

Если вы установите sun.java2d.d3d в значение false, худшее, что может случиться, - это то, что некоторые пользователи не достигнут той производительности, которая теоретически могла бы быть.Вам придется взвесить, предпочтительнее ли это по сравнению с проблемами, которые вы наблюдаете в данный момент.

Другие советы

Выполняются ли все операции по покраске и смене модели в EDT (напримеризменение табличной модели и т.д.)?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top