Díky za nakopnutí :) Narazil jsem ale na jeden problém se kterým si nevím rady. Když při stisku tlačítka vytvořím nové vlákno, ve kterém čtu bajt na COM portu, tak po opětovném stisku tlačítka bych potřeboval vytvořené vlákno zrušit. To dělám pomocí thread.Abort(). Průšvih je v tom, že čtu bajt pomocí serialPort.ReadByte(). Jenže pokud nedojde k přijetí a stisknu tlačítko pro zrušení vlákna tak mi to vyhodí výjimku: "An unhandled exception of type 'System.ObjectDisposedException' occurred in mscorlib.dll
Additional information: Bezpečný popisovač byl zavřen." Na netu jsem se dočetl, že problém je právě ve serialPort.ReadByte(), ale nikde jsem nenašel srozumitelné řešení. Jen ještě upřesním funkci jaké by mělo mít zmiňované tlačítko: 1. kliknutí - vytvoření a spuštění vlákna 2. kliknutí - zrušení vlákna 3. kliknutí - vytvoření a spuštění vlákna 4. kliknutí - zrušení vlákna ... atd Poradí někdo? Nebo aspoň nakopněte :) P.S.: Ono by možná stačilo vytvořené vlákno uspat, ale pak bych jej potřeboval znova probudit s tím, že by se vlákno "restartovalo".
|