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


static?

Postades av 2003-11-09 16:46:43 - Jimmie Elvenmark, i forum c# (c-sharp), Tråden har 10 Kommentarer och lästs av 877 personer

Hur gör jag i det här exemplet för att kunna kontrolera status-värdet i Main-Metoden?

<code>
using System;
using System.Threading;

class Status
{
public static void Main()
{
Thread t1 = new Thread(new ThreadStart(uppdatera_Status));
t1.Start();
//Använd status...
}
public static void uppdatera_Status();
{
string status="";
while(status!="quit")
{
//Kolla status...
status=value;
}
}
}
</code>


Svara

Sv: static?

Postades av 2003-11-09 16:54:50 - Oskar Johansson

impossible... :)


Svara

Sv: static?

Postades av 2003-11-09 16:57:01 - Jimmie Elvenmark

Hur ska jag lösa det då?


Svara

Sv: static?

Postades av 2003-11-09 18:15:44 - Fredrik Normén

Skapa ett fält som är static och använd det i din klass.

Något likt detta borde fungera:

<code>
using System;
using System.Threading;

class Status
{
private static string status;

public static void Main()
{
t1 = new Thread(new ThreadStart(uppdatera_Status));
t1.Start();

if(status=="....")
//Använd status...
}

public static void uppdatera_Status();
{
status = "";
while(status!="quit")
{
//Kolla status...
status=value;
}
}
}
</code>

/Fredrik Normén NSQUARED2
http://www.nsquared2.net


Svara

Sv: static?

Postades av 2003-11-09 20:05:43 - Magnus Gladh

problemet är snarare att du inte kommer att kontrollera ditt status värde när du tror det.

Du kan inte veta när tråden körs. Din main tråd fortsätter att köras "under tiden" som din uppdatera_status körs.

Vilket betyder att rent teoretiskt så kan din main tråd ha exekverats färdigt innan din uppdatera_status har körts. Vilket säkert inte är vad du vill.

om du använder dig av fredriks metod så glöm inte att göra en lock på status variablern undertiden som du läser från den, annars så kan du få "intressanta" fel.

MVH
- Magnus


Svara

Sv: static?

Postades av 2003-11-09 21:45:01 - Oskar Johansson

En fråga om lock: Ifall någon annan försöker komma åt den medan den är låst, väntar den då tills den är olåst eller blir det exception eller hur...?


Svara

Sv: static?

Postades av 2003-11-09 21:54:47 - Fredrik Normén

Den väntar tills den inte är låst längre..

Magnus har helt rätt. Eftersom tråden har sitt egna liv så måste du i din main anävnda dig av tex en eveighets loop som kontrollerar trådens status.

/Fredrik Normén NSQUARED2
http://www.nsquared2.net


Svara

Sv: static?

Postades av 2003-11-10 08:18:17 - Roger Alsing

fast varför ska han starta en ny tråd om main tråden iaf bara ska stå och loopa och kolla en status???

varför inte göra den nya trådens jobb i main tråden???

//Roger


Svara

Sv: static?

Postades av 2003-11-10 08:31:14 - Magnus Gladh

Det kan man ju undra, men det är säkert tänkt att det skall göras andra saker undertiden i Main tråden, medans den andra tråden gör sina saker och när det är gjort så ändras status till något. Och då kan main tråden känna av detta och göra något speciellt.

Fast då är det ju Asynchrona funktions anrop den bästa lösningen. Main tråden skapar gör ett asynchront anrop till en method, denna method starts i en egen tråd och körs. När den sedan är färdigt så kallas en 3 method och körs, och där ikan du göra vad du vill. Borde ju vara den smidigaste lösningen på problemet.

- M


Svara

Sv: static?

Postades av 2003-11-10 11:10:22 - Fredrik Normén

Frågan är vad Jimmie har tänkt göra med och i tråden. Ett Asynkront anrop skulle som du säger fungera bra här om syftet är enbart att köra en metod och när den är klar så så anropas en callback metod.

/Fredrik Normén NSQUARED2
http://www.nsquared2.net


Svara

Sv: static?

Postades av 2003-11-19 20:55:47 - Jimmie Elvenmark

Nu funkar det bra. Tack alla för hjälpen! :-)


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

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 569 155
27 952
271 704
6 060
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