Java GUI extremamente lento

2

Estou escrevendo um aplicativo Java e a GUI é extremamente lenta na configuração do meu Ubuntu 11.10 64bit. Demora alguns segundos para responder a alguma ação. Ele funciona perfeitamente no Max OS X e no Windows 7, ele funciona muito bem em um novo Ubuntu 11.10 (32 e 64 bits) do VirtualBox rodando no Win7.

Eu já tentei três versões diferentes do Java e isso não ajudou. Qual poderia ser o problema?

Versão atual do Java:

java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
    
por Homulvas 25.02.2012 / 20:01

2 respostas

2

Você pode querer tentar instalar a versão 1.7 (o do oracle, não o openjdk), e certificar-se de que seja a versão ativa usando update-alternatives e java -version.

Observe, no entanto, que o java NÃO é uma tecnologia rápida. Seus aplicativos são compilados para o código de bytes intermediário, que precisa ser interpretado por um aplicativo bastante pesado chamado JVM. Embora eu não me lembre de ter experimentado vários segundos de atraso de interface, eu sei que o GUI escrito em java tende a ser lento.

Eu nunca notei nenhuma diferença entre o windows 7 e o ubuntu / opensuse (cada um com 64 bits), mas isso pode ser devido à versão: eu sempre recebo o último java oficial sdk (isto é, da Oracle).

-

Embora isso possa não ser a resposta que você gostaria de ouvir, se você não precisar explicitamente de java (o que você faria se estivesse segmentando dispositivos móveis, suponho) e / ou se o desempenho for importante para seu aplicativo, talvez você queira procurar uma alternativa compilada nativa. C ++ com Qt seria uma excelente alternativa, se você estiver familiarizado com o C ++. Ele mantém o seu aplicativo multiplataforma, sem afetar o desempenho geral.

O Mono / C # vem com uma opção para pré-compilar o bytecode, então você basicamente tem um executável nativo com o tempo de execução mono incluído (pesado na inicialização, mas mais rápido que o java em tempo de execução).

    
por Mr. Pixel 21.03.2012 / 20:45
1

Por sua descrição, eu seria um problema de driver de vídeo. Procura por questões relacionadas ao desempenho relacionadas à sua placa de vídeo no Ubuntu. Dentro de uma VM, o Ubuntu usa um driver específico da VM que não tem nada em comum com o hardware

    
por Solerma Kaplon 21.03.2012 / 20:11