Igor Piotr I.

Igor Piotr I. IT manager/Senior
Oracle Developer

Temat: aplikacja serwerowa / w pętli co kwant czasu

siema
mam pytanie wskażcie proszę kierunek.
chce napisać aplikacje działającą w pętli replikującą dane co jakiś kwant czasu. pytanie dotyczy tego jak najlepiej się do tego zabrać.

Pierwsze co pomyślałem banał buduje timer i odpalam procedurę timerem - I tutaj sedno pytania czy istnieje jakaś alternatywna metoda niż timer. Jakiś wzorzec programowy, harmonogram systemowy czy cokolwiek innego do takiego zadania ?

Wiem że pytanie jest nieco pokrętne ale motywacje mam taką że napisałem już 2 takie aplikacje robiące zupełnie różne od siebie rzeczy a w obu pojawia się taki sam problem mianowicie obie te aplikacje z nieznanych mi przyczyn po pewnym czasie znikają. Zamykają się bez logowania żadnych zdarzeń. Aplikacje napisane były w WPF. Dla przykładu podaje poniżej w jaki sposób było to zrealizowane. Nie zależy mi na tym by doszukiwać się przyczyn tylko upewnić się że nie ma innych alternatywnych metod pisania takich aplikacji.

timerx = new DispatcherTimer();
timerx.Interval = TimeSpan.FromMinutes(10);
timerx.Tick += timer_Tick;
timerx.Start();

void timer_Tick(object sender, EventArgs e){
// działaj
}
Jacek R.

Jacek R. programista

Temat: aplikacja serwerowa / w pętli co kwant czasu

W takie sytuacji najlepiej napisać usługę systemową (czyli service), będziesz mieć pewność, że nic jej nie ubije. Bardzo łatwo też wyzwolić będzie akcję co określony czas przez:
ThreadPool.RegisterWaitForSingleObject Method (WaitHandle, WaitOrTimerCallback, Object, Int64, Boolean)
Więcej info w tym fajnym wpisie: http://blogs.msdn.com/b/morgan/archive/2008/12/18/peri...
Igor Piotr I.

Igor Piotr I. IT manager/Senior
Oracle Developer

Temat: aplikacja serwerowa / w pętli co kwant czasu

rewelacja
dzięki za szybką reakcję
Tomasz Augustyniak

Tomasz Augustyniak konsultant .NET,
Intensis Software
[owner]

Temat: aplikacja serwerowa / w pętli co kwant czasu

Osobiście korzystam z Quartz.NET do takich zabaw

konto usunięte

Temat: aplikacja serwerowa / w pętli co kwant czasu

Tomasz Augustyniak:
Osobiście korzystam z Quartz.NET do takich zabaw

oczywiście :)
Krzysztof Mierzejewski

Krzysztof Mierzejewski SharePoint
Consultant

Temat: aplikacja serwerowa / w pętli co kwant czasu

Polecam Reactive eXtensions. Poza tym na pewno się przyda jak będziesz coś pisał pod WP.
Karim Agha

Karim Agha Software Engineer

Temat: aplikacja serwerowa / w pętli co kwant czasu

Igor Piotr I.:
Wiem że pytanie jest nieco pokrętne ale motywacje mam taką że napisałem już 2 takie aplikacje robiące zupełnie różne od siebie rzeczy a w obu pojawia się taki sam problem mianowicie obie te aplikacje z nieznanych mi przyczyn po pewnym czasie znikają. Zamykają się bez logowania żadnych zdarzeń.

Jeśli bo jakimś wyjątku nie masz nic w żadnych logach, pomijajac systemowy EventLog (bo to juz jest obsługiwane z poziomu CLR), to może być jedno z tych wyjątków które powodują failfast (takie jak na przykład StackOverflowException), które powodują natychmiastowe zabicie procesu bez żadnej możliwości obsługi tego błędu.

A wszystkie inne wyjatki powinienes byc w stanie obsluzyc zwyklym blokiem try/catch.Karim Agha edytował(a) ten post dnia 08.07.12 o godzinie 02:51

Następna dyskusja:

Aplikacja bazodanowa do obs...




Wyślij zaproszenie do