Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Problem med events och trådar och sånt

Postades av 2008-05-14 15:43:06 - Robert Bolocci, i forum c# (c-sharp), Tråden har 5 Kommentarer och lästs av 858 personer

Hej alla,

Jag har en Windows Service som i en intervall (timer) kallar på en method (som ligger i en annan assembly - dll fil) för att göra vissa grejer. och det fungerar.

vad jag vill göra är att det kan hända att servicen stoppas. Assembly:n som innehåller metoden har en property som blir false om Servicen stoppas. Vad jag vill göra är att metoden sluta köra så fort propertyn har blivit false altså Windows servicen är stoppad.

måste jag använda trådar och events? att metoden ska köras under en worker tråd som kollar hela tiden om propertyn är true (vanlig if-stats) och i Windows Servicens OnStop() method raisa event ?? går det så? eller hur kan jag fixa detta? behöver lite kod.

tack så väldigt mycket


Svara

Sv: Problem med events och trådar och sånt

Postades av 2008-05-15 08:19:28 - Chris Klug

Är det inte lättare att köra metoden i en separat tråd som du sedan dödar när servicen stoppas?
Typ:
Servicens OnStart kallas
Thread t = new Thread(MinMetod)
Servicens OnStop kallas
t.Abort()

Känns lättare att döda tråden från "huvud" tråden än att ha den metoden kollandes en property. Dock bör du i din metod ha en try catch för ThreadAbortException som kommer kastas när man aborterar tråden. Kanske inte jätte snyggt, men lättare...


Svara

Sv:Problem med events och trådar och sånt

Postades av 2008-05-15 09:36:30 - Robert Bolocci

Tack för ditt svar,

en sak som jag inte vet är att på OnStart() skapar jag trådar som startar andra assemblys metoder.

Vad händer med tråden om inget exception eller fel händer? dör den själv eller efter att den han gjort sitt jobb ska jag kalla på Abort()??

tack igen


Svara

Sv: Problem med events och trådar och sånt

Postades av 2008-05-15 14:06:46 - Roger Alsing

Om du sätter en tråd till .IsBackground = true;

så dör den tillsammans med maintråden. iaf så fungerar det så i WinForms.
Men antar att det gäller samma för tex en service.


Svara

Sv:Problem med events och trådar och sånt

Postades av 2008-05-16 10:31:02 - Robert Bolocci

Tack

blir inte nån form av minnesläckage (eller annat problem) om en NT service skapar trådar var 30 sekund. trådarna startar metoder som kommunicerar med DB och gör annat.

WindowsService ---> tråd1 --- startar ---> dll1.class1.metod1
---> tråd2 --- startar ---> dll2.class2.metod2
---> tråd3 --- startar ----> dll3.class3.metod3

i varje class 1, 2 och 3 har jag följande kod:

classerna
{
private Thread ThisWorkerThread;

metoderna
{
try
{
ThisWorkerThread = Thread.CurrentThread;
....
//gör allt annat
.......
}
catch(exception ex)
{
//gör vissa grejer och
ThisWorkerThread.Abort();
}
}
}


Svara

Sv: Problem med events och trådar och sånt

Postades av 2008-05-20 13:05:16 - Mats Karlsson

Robert skrev:
__________________
vad jag vill göra är att det kan hända att servicen stoppas. Assembly:n som innehåller metoden har en property som blir false om Servicen stoppas. Vad jag vill göra är att metoden sluta köra så fort propertyn har blivit false altså Windows servicen är stoppad.
__________________

Om du startar metoden i en ny tråd så kan du skicka använda tråden.Interrupt(); ifrån servicens OnStop() så kastas ett ThreadInterruptedException i din metod som du då kan fånga och hantera snyggt och då även köra viss kod i "finally"


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 707
27 958
271 751
736
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies