Canvas ou JComponent?

Olá gente !!! Estava pesquisando sobre um problema que estava tendo com o Canvas usado junto com um JFrame e vi em alguns sites falando pra usar JComponent no lugar de Canvas (não sei se entendi muito bem, mas pelo que entendi foi isso).
Então fiz o seguinte:
Minha classe que era:

eu mudei para: public class Game extends JComponent

O problema é que agora não consigo mais desenhar nada na tela. Antes eu fazia o double buffering usando:

createBufferStrategy(2); strategy = getBufferStrategy();
E depois que desenhasse os gráficos era só usar:

strategy.show();
Mas o JComponent não tem nada disso, então olhando a documentação dele vi que era pra fazer:

Agora o problema é que eu não consigo desenhar mais nada na tela. O programa carrega o JPanel, mas não exibe nada dentro dele.

Veja um exemplo de uma função que deveria desenhar:

[code] public void paintStageConfig(){
Graphics2D g = (Graphics2D)strategy.getDrawGraphics();
g.setColor(Color.black);
g.fillRect(0,0,getWidth(),getHeight());
g.setFont(new Font(“Arial”,Font.BOLD,20));

    g.setPaint(Color.GREEN);
    g.drawString("OBJETIVO: ",Stage.WIDTH/2-90, 120);

    //strategy.show();

}[/code]

Logo no início essa função é chamada, mas não aparece nada. O que estou fazendo de errado? Se necessário, posto mais código, postei só o que achei necessário, pois o programa tem bastante coisa.

Vlw!

Para jogos voce deve usar Canvas mesmo. Pois voce tem a vantagem do BufferStrategy.

Entendi. Então vou voltar a deixar como estava antes mesmo, pois estava lendo sobre isso e vi em muitos lugares falando pra não usar o Canvas.
Você sabe se é normal, no Linux, o programa demorar um pouco pra fechar ao clicar no botão de fechar da janela?
Isso acontece mais na tela que está exibindo isto:

[code] public void paintStageConfig(){
Graphics2D g = (Graphics2D)strategy.getDrawGraphics();
g.setColor(Color.black);
g.fillRect(0,0,getWidth(),getHeight());
g.setFont(new Font(“Arial”,Font.BOLD,20));

g.setPaint(Color.GREEN);  
g.drawString("OBJETIVO: ",Stage.WIDTH/2-90, 120);  

 strategy.show();  

} [/code]

Talvez seja problema do processador e não da aplicação.

Entendo. Vou testar ele aqui em outro PC então e ver o que acontece, o que eu estou achando estranho é que só acontece isso nesta tela. Vou fazer uns testes e depois posto se consegui descobrir algo.