<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=60&amp;t=8423&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-09-07T10:38:10+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=60&amp;t=8423&amp;mode</id>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-09-07T10:38:10+01:00</updated>
<published>2014-09-07T10:38:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94552#p94552</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94552#p94552"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94552#p94552"><![CDATA[
<div class="quotetitle">mokrowski napisał(a):</div><div class="quotecontent"><br />Jeśli któreś z koleżanek/kolegów posiada trochę wiedzy związanej z programowaniem wielowątkowym (bo to jest temat w kierunku którego migrujemy), wywołań asynchronicznych lub innych technik/narzędzi które udostępnia system operacyjny (MS Windows i GNU/Linux), osobiście byłbym zobowiązany gdybym zobaczył jakiś tutorial/artykuł obejmujący ten temat. Nie ukrywam że jeszcze lepiej gdyby rzecz dotyczyła MCU<br /></div><br /><br />I to jest bardzo dobra koncepcja. Gdyż dobrych poradników nigdy dosyć.<p>Statystyki: Napisane przez Gość — 7 wrz 2014, o 10:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PROTON]]></name></author>
<updated>2014-09-07T07:15:35+01:00</updated>
<published>2014-09-07T07:15:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94536#p94536</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94536#p94536"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94536#p94536"><![CDATA[
Racja, dawno nie pisałem aplikacji pod Windowsem, ostatnio dłubię w Linuxie.<br />W WinMain() nie ma sensu dawać instrukcji sleep.<br /><br />Jeśli trzeba coś cyklicznie wykonywać, można zastosować timer.<br />Ustawiamy timer:<br /><br />[syntax=cpp]#define ID_TIMER515<br />SetTimer( hwnd, ID_TIMER, 10000, NULL );[/syntax]<br /><br />Następnie w WndProc umieszczamy obsługę zdarzenia WM_TIMER, tych timerów może być wiele różnych, tylko każdy musi mieć swój ID.<br />[syntax=cpp]LRESULT CALLBACK WndProc( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam )<br />{<br />    switch( msg )<br />    {<br />case WM_TIMER:<br />if(wParam == ID_TIMER){<br />// obsługa zdarzenia wywołanego przez timer<br />}<br />}<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1315">PROTON</a> — 7 wrz 2014, o 07:15</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-09-06T23:41:00+01:00</updated>
<published>2014-09-06T23:41:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94527#p94527</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94527#p94527"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94527#p94527"><![CDATA[
<div class="quotetitle">PROTON napisał(a):</div><div class="quotecontent"><br />A właśnie że należy stosować i to w pętli głównej.<br /></div><br /><br />A gdzie masz pętlę główną w obiektówce ? ... w wątkach tak ... może być i dłuższy SLEEP ... Ale nie w wątku głównym. Chyba że piszesz w C<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 6 wrz 2014, o 23:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-09-06T21:30:26+01:00</updated>
<published>2014-09-06T21:30:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94517#p94517</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94517#p94517"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94517#p94517"><![CDATA[
<div class="quotetitle">PROTON napisał(a):</div><div class="quotecontent"><br />sleep(0), wtedy niewykorzystany przydział czasu zwracamy do systemu, jądro przydziela czas następnemu procesowi.<br /></div><br /><br />To cenna wskazówka, że nie wite, a sleep <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><p>Statystyki: Napisane przez Gość — 6 wrz 2014, o 21:30</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PROTON]]></name></author>
<updated>2014-09-06T21:21:06+01:00</updated>
<published>2014-09-06T21:21:06+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94513#p94513</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94513#p94513"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94513#p94513"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />reza - ale programując na PC pod żadnym pozorem w wątku głównym nie można stosować poleceń typu SLEEP , WAIT itp<br /></div><br />A właśnie że należy stosować i to w pętli głównej.<br />Jeśli po przejściu pętli stwierdzamy że nie ma nic do roboty, nie ma danych albo wszystkie zostały przetworzone to należy wywołać sleep(0), wtedy niewykorzystany przydział czasu zwracamy do systemu, jądro przydziela czas następnemu procesowi.<br />Jeśli coś ma być robione cyklicznie w równych odstępach czasu lepiej jest użyć timera niż sleep.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1315">PROTON</a> — 6 wrz 2014, o 21:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-09-06T19:24:05+01:00</updated>
<published>2014-09-06T19:24:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94505#p94505</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94505#p94505"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94505#p94505"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br />reza - ale programując na PC pod żadnym pozorem w wątku głównym nie można stosować poleceń typu SLEEP , WAIT itp ...<br /></div><br /><br />Wiesz, ja o tym wiem <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />, aż za dobrze sobie zdaję sprawę z niedbalstwa programistów <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />.<p>Statystyki: Napisane przez Gość — 6 wrz 2014, o 19:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-09-06T14:41:49+01:00</updated>
<published>2014-09-06T14:41:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94483#p94483</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94483#p94483"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94483#p94483"><![CDATA[
reza - ale programując na PC pod żadnym pozorem w wątku głównym nie można stosować poleceń typu SLEEP , WAIT itp ....<br /><br />masz do tego tysiąc narzędzi żeby nie korzystać z tego (niekoniecznie zaraz wątki ... w których użycie krótkiego SLEEP'a nic nie boli) <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ...<br /><br />zdarzenia, timery itp itd .... Tutaj tzn na PC - to już nie jest tak że jakiś tam SLEEP/WAIT troszkę szkodzi ale da się żyć - WOGÓLE - nie można z tego korzystać a szczególnie przy powtarzających się często procesach tzn np w jakimś zdarzeniu itp ... bo blokujesz permanentnie cały wątek i nie dziwota - że aplikacja tzn nawet jej formatka się &quot;zamraża&quot; i mamy komunikat - &quot;brak odpowiedzi&quot;<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 6 wrz 2014, o 14:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-09-06T13:55:12+01:00</updated>
<published>2014-09-06T13:55:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94478#p94478</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94478#p94478"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94478#p94478"><![CDATA[
Tj. problem leży w tym, że zamiast np. zrobić opóźnienie wysyłania odpowiedzi po dostaniu danych, na timerze, czyli bez wrzucania zbędnych opóźnień do programu, jest zwykły wite <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />. Co przy obsłudze kilkudziesięciu urządzeń powodowało iż system po kilku godzinach pracy dostawał niesamowitej czkawki, aż praktycznie do powieszenia całego systemy, nie wiem czy to spowodowane jest samą architekturą windowsów zarządzania czasem procesora etc. ale koniec końców wywalenie wite i zcedowanie go do urządzenia docelowego, rozwiązało problem.<br />Czyli urządzenie wysyła i odbiera dane potwierdzające jak to szybko możliwe, zaś interfejs użytkownika na docelowym urządzeniu dba już o to by sam użytkownik miał czas na zauważenie potwierdzenia wysłanych danych.<br /><br />Ja nie twierdzę, że to zło. Tylko to jak z delay na AVRach, używane w głównej pętli, powoduje spore problemy.<p>Statystyki: Napisane przez Gość — 6 wrz 2014, o 13:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-09-06T13:32:03+01:00</updated>
<published>2014-09-06T13:32:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94475#p94475</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94475#p94475"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94475#p94475"><![CDATA[
<div class="quotetitle">Antystatyczny napisał(a):</div><div class="quotecontent"><br />Na razie chcę pomigać napisem Hello world w konsoli - nic więcej<br /></div><br /><br />to do tego wystarczą ci przy programowaniu na PC najzwyklejsze Timery, które na pewno są w C# .... i wtedy żadnego delaya nie trzeba <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> a program się nie musi zatrzymywać <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 6 wrz 2014, o 13:32</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-09-06T13:14:31+01:00</updated>
<published>2014-09-06T13:14:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94472#p94472</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94472#p94472"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94472#p94472"><![CDATA[
Mogę ci powiedzieć, że jakiekolwiek wrzucanie do kodów wite, delay, po prostu kończy się czkawką softu, jeżeli ten obsługuje bazę danych, jakieś pobieranie/przetwarzanie danych itp.<br />Niestety, u mnie panuje taka maniera, że softy są pisane na kolanie w C# i potem kończy się to tym, że nawet dwu rdzeniowy atom nie wyrabia z prostym softem.<p>Statystyki: Napisane przez Gość — 6 wrz 2014, o 13:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MichalXY]]></name></author>
<updated>2014-09-06T12:08:03+01:00</updated>
<published>2014-09-06T12:08:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94465#p94465</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94465#p94465"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94465#p94465"><![CDATA[
Anty poczytaj sobie o usypianiu wątków --&gt; <a href="http://msdn.microsoft.com/pl-pl/library/d00bd51t(v=vs.110).aspx"  class="postlink">http://msdn.microsoft.com/pl-pl/library/d00bd51t(v=vs.110).aspx</a><br /><br />Ja tego użyłem raz  w jedenj aplikacji okienkowej(tyle że w C# ) to aplikacja w wywołaniu metody zachoywała się jakby sie zawiesiła ale mniej więcej spełniła moje oczekiwania. Są też Timery i one zdecydowanie lepiej działają, z resztą zależy do czego potrzebujesz opóźnień to stosujesz albo usypianie wątku, albo timerów - takie jest moje zdanie  <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br /><br />Pozdrawiam!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=226">MichalXY</a> — 6 wrz 2014, o 12:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-09-06T12:02:33+01:00</updated>
<published>2014-09-06T12:02:33+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94464#p94464</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94464#p94464"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94464#p94464"><![CDATA[
W C# jest //System.Threading.Thread.Sleep(20); ,ale jest to bardzo mało efektywne, przy większej ilości wątków program zaczyna mulić niemiłosiernie.<br /><br />Szukał bym czegoś w stylu systick, albo rozwiązań na bazie zegara systemowego, by nie zawieszać żadnego wątku, czy nie robić chamskiego delay, chyba że tylko do testów chcesz. Z własnego doświadczenia powiem, że takie programy potem są nawet na 2 rdzeniowym wstanie powiesić cały system <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />.<p>Statystyki: Napisane przez Gość — 6 wrz 2014, o 12:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[atmel]]></name></author>
<updated>2014-09-06T11:57:34+01:00</updated>
<published>2014-09-06T11:57:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94462#p94462</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94462#p94462"/>
<title type="html"><![CDATA[Re: Opóźnienia czasowe w softach na PC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=8423&amp;p=94462#p94462"><![CDATA[
Może są: delay, sleep, wait...  <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1183">atmel</a> — 6 wrz 2014, o 11:57</p><hr />
]]></content>
</entry>
</feed>