Bonjour,

j'écris une interface pour lire des données entrant d'un port USB.
Des qu'une donnée arrive, un thread lit la donnée, la convertie et l'affiche dans un Table.
le problème c'est que durant mes tests si j'augmente la fréquence d'envois des données sur le port à une donnée/ms j'obtiens rapidement l'erreur suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Exception in thread "Thread-0" java.lang.StackOverflowError
	at org.eclipse.swt.internal.win32.OS.PostThreadMessage(OS.java:2411)
	at org.eclipse.swt.widgets.Display.wakeThread(Display.java:3961)
	at org.eclipse.swt.widgets.Synchronizer.addLast(Synchronizer.java:62)
	at org.eclipse.swt.widgets.Synchronizer.asyncExec(Synchronizer.java:81)
	at org.eclipse.swt.widgets.Display.asyncExec(Display.java:603)
	at ui.InputTrame_Viewer.addFrame(InputTrame_Viewer.java:132)
la ligne 132 et la deuxième ligne du code suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public void addFrame(final CanTrame trame) {
		ui.getDisplay().asyncExec(new Runnable() {
			public void run() {
				TableItem newLigne = new TableItem(ui, SWT.NONE);
 
				// Time
				newLigne.setText(0, trame.getStrTime());
				// Priority
				newLigne.setText(1, String.valueOf(trame.getPriority()));
				// Transmitter
				newLigne.setText(2, trame.getStrTransmitter());
				// Recipient
				newLigne.setText(3, trame.getStrRecipient());
				// id
				newLigne.setText(4, trame.getStrId());
				// Length
				newLigne.setText(5, String.valueOf(trame.getLength()));
				// Data
				newLigne.setText(6, trame.getStrData());
 
				if (!btScrollLock.getSelection())
					ui.showItem(newLigne);
 
				TxtNbTrameReceived.setText(
						String.valueOf(Integer.valueOf(TxtNbTrameReceived.getText()) + 1));
			}
		});
	}
est ce que quelqu'un peut me dire comment gérer/éviter cette erreur?

Merci d'avance.