Clip spielt manchmal nicht

Ich habe eine Sound-Klasse, die eine Methode enthält, die beim Aufrufen einen Sound mithilfe eines Clip-Objekts abspielt (in diesem Fallclip).

public static void play() {
    clip.stop();                // The purpose of the first three lines
    clip.flush();               // is to restart the Clip object so it
    clip.setFramePosition(0);   // can be played multiple times.
    clip.start();
}

Die Instanziierung des Clip-Objekts erfolgt in einer separaten statischen Methode, die vor dieser Methode aufgerufen wird, weshalb die obige Methode als statisch deklariert werden kann.

Eine andere Klasse, die @ implementieKeyListener enthält den folgenden Code:

public void keyPressed(KeyEvent e) {
    Sound.play(); // Sound is the class that implements the previous method.
}

Daher sollte mein Code den Ton wiedergeben, der mit @ verknüpft isclip Jedes Mal, wenn eine Taste gedrückt wird. Wenn ich jedoch wiederholt und schnell eine Taste drücke, wird der Ton manchmal nicht abgespielt. Dies macht sich besonders nach einer Weile bemerkbar (es scheint, als würde sich das Problem mit jedem Tastendruck verschlimmern).

Warum passiert das und wie kann ich dieses Problem umgehen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage