Gestion de la mémoire douteux dans un thread
Bonjour,
Je démarre un thread qui se termine seulement a la fin du programme dont le but est de checker si un périphérique est connecté via usb -> HID.
J'ai tenté de 2 manières:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
while (true)
{
if (HidDevices.IsConnected("\\\\?\\hid#vid_1b91&pid_000a#6&1d66a16e&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}"))
{
ctrl.getIhm().Invoke(ctrl.getIhm().UploadDelegate, new object[] { true });
ctrl.getIhm().Invoke(ctrl.getIhm().EtatBarDelegate, new object[] { "Ewoo connected" });
}
else {
ctrl.getIhm().Invoke(ctrl.getIhm().UploadDelegate, new object[] { false });
ctrl.getIhm().Invoke(ctrl.getIhm().EtatBarDelegate, new object[] { "Ewoo no connected" });
}
Thread.Sleep(800);
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
while (true)
{
HidDevices[] devices = HidDevices.Enumerate(0x1B91, 0x000A);
if (devices.Length > 0)
{
ctrl.getIhm().Invoke(ctrl.getIhm().UploadDelegate, new object[] { true });
ctrl.getIhm().Invoke(ctrl.getIhm().EtatBarDelegate, new object[] { "Ewoo connected" });
}
else {
ctrl.getIhm().Invoke(ctrl.getIhm().UploadDelegate, new object[] { false });
ctrl.getIhm().Invoke(ctrl.getIhm().EtatBarDelegate, new object[] { "Ewoo no connected" });
}
Thread.Sleep(800);
} |
Les 2 fonctionnes cependant le programme ne fait qu'augmenter en RAM. Il est possible qu'il y ait un pb avec la libraire que j'utilise: http://labs.mike-obrien.net/view.asp...tid=hidlibrary
Est ce que qqu peut m'aider ?