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


Timer mer sällan än 10 sek

Postades av 2002-01-30 08:41:45 - Björn Bengtsson, i forum visual basic - allmänt, Tråden har 17 Kommentarer och lästs av 520 personer

Hej,
jag funderar på att använda någon timer som kör igång någon gång i timmen. Det känns onödigt att generera ett timeravbrott vart 10e sekund bara för det. Finns det något annat sätt att låta mitt program vänta?


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-30 14:02:16 - Sven Åke Persson

Hej
Var 10 sek är väl ingen större belastning,men man
skulle kunna tänka sig en lösning 1ggn i minuten.
När det sedan är 2 minuter kvar låter man timern
växla till intervall 10 sek.
Jobbet måste ju göras någonstans så belastning blir det alltid.
mvh
Sven


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-30 14:26:01 - Anette Anderung

hmm...Om detta ska ske 1 ggn per timme..

Utnyttja systemklockan och så har du en loop som ligger och känner av systemklockan. Skapa en klass som har det som uppgift.

//Nettan


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-30 17:35:23 - Sven Åke Persson

Hej
>Utnyttja systemklockan och så har du en loop som ligger och känner av
>systemklockan.

Skall den loopen stå och gå i flera timmar ?? Då blir verkligen
systemet belastat i onödan.

Tycker
Sven


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-30 17:50:05 - Thomas Tydal

> Skall den loopen stå och gå i flera timmar ?? Då blir verkligen
> systemet belastat i onödan.

Det är ju bara att sänka prioriteten. Inte mer med det. Datorn är ju alltid lika mycket belastad hur man än gör. Det är ju inte så att den inte gör någonting bara för att man inte har något program igång. Att göra ingenting är lika påfrestande för datorn som att utföra avancerande beräkningar.

Att ligga på under 100% CPU-användning är alltså slöseri med el :-)


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-30 18:04:19 - Sven Åke Persson

Hej
> > systemet belastat i onödan.

njaaaaaaaa ?, håller detta ?, om vb ligger och kör en loop
så måste väl alla andra progam som är igång få sämre
prestanda, Vb stjäl kapacitet i onödan.
Att det sedan inte märks är en helt anna sak.

DS



Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-30 18:51:56 - Thomas Tydal

Ja, sänker du prioriteten så tar den ju bara kapacitet som finns ledig. Den snor inget från något annat program. Testa själv med ett litet program jag slängde ihop: http://www.tydal.nu/minne.exe (6 kB). Den tar all kapacitet den får, så du har CPU-användning på 100%, men alla andra program får fortarande det de ber om, så det går ju inte slött.


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-30 19:58:55 - Sven Åke Persson

Igen
>Ja, sänker du prioriteten

Vad menas DoEvents eller Yield

Undrar
Sven


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-30 20:43:40 - Thomas Tydal

>> Ja, sänker du prioriteten
> Vad menas DoEvents eller Yield

Lägre nivå än så. Man ändrar processens prioritet som direkt anger för Windows Task Manager hur ofta den ska ge CPU-tid till programmet.

Funktionen heter SetPriorityClass (winapi) och finns i kernel32.dll.

Sätter man den på IDLE_PRIORITY_CLASS så får programmet bara den CPU-tid som blir över när alla andra program tagit sitt.


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-31 07:26:42 - Sven Åke Persson

Igen
Intressant information ,fick jag lära mig något nytt.
Har alltid trott att resurserna delades lika i pågående processer.
Om jag förstått det rätt så är det med denna teknik
som Skärmsläckaren fungerar.

Tilläggsfråga , hur får man tag i hProcess ?

ha det
Sven


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-31 09:54:05 - Christer Olsson

Personligen brukar jag sätta timern på en sekund. Belastningen är så liten att det, i normalfallet, inte är värt besväret med någon annan metod.

Skulle det vara så att det finns speciella skäl kan man alltid implementera en sorterad kö av händelser som skall utföras. Timern ställs då in så att den löser ut när den första händelsen på kön är "mogen". Är denna tid för lång för timern så ställer man timern på maxtid och gör en ny koll nästa gång.

Vad det gäller loopar som pollar systemklockor eller annat anser jag att de bör undvikas, även om man sätter ned prioriteten. Det kan finnas andra applikationer som använder en låg prioritet... Dessutom, som före detta sysadmin, är det inget kul att spåra flaskhalsar i maskiner som har sådana CPU-ätare. Det går liksom inte att se att CPU-lasten har förändrats eftersom den alltid är 100%.

/CO


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-31 10:19:19 - Thomas Tydal

> Tilläggsfråga , hur får man tag i hProcess ?

Den aktuella processen får du med GetCurrentProcess, också det i Kernel32.dll.


Svara

Tack för den uttömmande diskussionen

Postades av 2002-01-31 12:52:29 - Björn Bengtsson

Det gav mer än jag hoppats på. Jag tror att jag går på den enklaste lösningen: köra på 10 sek intervall och loopa tills jag kommit upp till 60 om jag vill vänta 10 sek. Det var just det med att programmet inte skulle ta en massa onödig kapacitet, men det märks ju knappast som någon påpekade.

Intressant att angripa problemet med att sänka prioriteten.


Svara

Sv: Tack för den uttömmande diskussionen

Postades av 2002-01-31 13:44:41 - Sven Åke Persson

Hej
Du väljer 10 sek men Obs Timern är inte ett dugg pålitlig
som tidmätare så du får inte tro att du prickar rätt på 10 sek när.

DS


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-31 14:51:45 - Rickard Andersson

Fast det funkar väl bara på winnt och uppåt?

Xp verkar ha ännu fler nivåer om man tittar i taskmangagern iallafall..

/Rickard (Som egentligen inte har någon aning)

Ps: Förrut kunde jag högerklicka på en dll och dra igång dependency walker har jag för mej men inte längre.. Nån som vet hur man fixar såna grejer??


Svara

Sv: Timer mer sällan än 10 sek

Postades av 2002-01-31 15:39:13 - Thomas Tydal

> Fast det funkar väl bara på winnt och uppåt?

Win95 och uppåt.


Svara

Sv: Tack för den uttömmande diskussionen

Postades av 2002-01-31 19:42:12 - Alexander Thoor

Varför inte ställa in timern på 30-60 sek eller nåt och kolla mot systemklockan varje gång?

Ale Thoor


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 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

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 632
27 953
271 710
8 381
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