У меня есть (как я думал, было) стратегия Buffer для JFrame. Он создан так:
// Buffer
container.createBufferStrategy(2);
strategy = container.getBufferStrategy();
Тем не менее, иногда я получаю следующую ошибку (которая указывает на первую строку предыдущего фрагмента в качестве элемента-нарушителя):
java.lang.IllegalStateException: буферы не были созданы
Эта ошибка является особенной, когда она появляется и уходит - иногда она срабатывает, иногда нет. Я подозреваю это означает, что это проблема с многопоточностью. У кого-нибудь есть указания относительно того, что здесь может происходить? Я немного растерялся, потому что я уже пытаюсь делать то, что Java говорит, что хочет, чтобы я делал!
редактировать: полный след:
Exception in thread "main" java.lang.IllegalStateException: Buffers have not been created
at sun.awt.windows.WComponentPeer.getBackBuffer(WComponentPeer.java:877)
at java.awt.Component$FlipBufferStrategy.getBackBuffer(Component.java:3815)
at java.awt.Component$FlipBufferStrategy.updateInternalBuffers(Component.java:3800)
at java.awt.Component$FlipBufferStrategy.createBuffers(Component.java:3791)
at java.awt.Component$FlipBufferStrategy.<init>(Component.java:3730)
at java.awt.Component$FlipSubRegionBufferStrategy.<init>(Component.java:4253)
at java.awt.Component.createBufferStrategy(Component.java:3612)
at java.awt.Window.createBufferStrategy(Window.java:3015)
at java.awt.Component.createBufferStrategy(Component.java:3536)
at java.awt.Window.createBufferStrategy(Window.java:2990)