ken82m Posted February 28, 2004 Share Posted February 28, 2004 I have a script I wrote in version 2 which simply monitored for some files I had it running as a service. It might jump up to 1% in task manager when it found a file and renamed it but otherwise it was always at 0. I converted the same script to version 3 and now it's taking 25% of my cpu while doing nothing (just watching for the files). Any ideas? Here's my code. V2 (Low CPU Usage): SetEnv,PDFRoot,C:\\CreatePDF\\ SetEnv, SourceFile, CreatePDF Setenv, Ext,.PSF Loop: SetEnv,Random, SetEnv,Source, SetEnv,Destination, SetEnv, PrintSource, 0 IfExist, %PDFRoot%%SourceFile%1%Ext%, SetEnv, PrintSource, 1 IfExist, %PDFRoot%%SourceFile%2%Ext%, SetEnv, PrintSource, 2 IfExist, %PDFRoot%%SourceFile%3%Ext%, SetEnv, PrintSource, 3 IfExist, %PDFRoot%%SourceFile%4%Ext%, SetEnv, PrintSource, 4 IfExist, %PDFRoot%%SourceFile%5%Ext%, SetEnv, PrintSource, 5 IfExist, %PDFRoot%%SourceFile%6%Ext%, SetEnv, PrintSource, 6 IfExist, %PDFRoot%%SourceFile%7%Ext%, SetEnv, PrintSource, 7 IfExist, %PDFRoot%%SourceFile%8%Ext%, SetEnv, PrintSource, 8 IfExist, %PDFRoot%%SourceFile%9%Ext%, SetEnv, PrintSource, 9 IfExist, %PDFRoot%%SourceFile%10%Ext%, SetEnv, PrintSource, 10 IfNotEqual,PrintSource,0, Goto, Rename goto, Loop Rename: Random, Random, 100, 900 Setenv, Source, ToConvert%Random%.PSF Setenv, Destination, ConvertedPDF%Random%.PDF Runwait, %comspec% /C "ren %PDFRoot%%SourceFile%%PrintSource%%Ext% %Source%", %systemroot%, Hide FileAppend,%PDFRoot%X%Random%Y%Source%Z%Destination%\n,C:\\CreatePDF\\Queue.txt goto, Loop ENDPGM: exit V3 (High CPU Usage): GLOBAL $PDFRoot GLOBAL $SourceFile $PDFRoot = "C:\CreatePDF\" $SourceFile = "CreatePDF" $Loop = 0 Do If FileExists($PDFRoot & $SourceFile & "1.PSF") = 1 Then Rename(1) If FileExists($PDFRoot & $SourceFile & "2.PSF") = 1 Then Rename(2) If FileExists($PDFRoot & $SourceFile & "3.PSF") = 1 Then Rename(3) If FileExists($PDFRoot & $SourceFile & "4.PSF") = 1 Then Rename(4) If FileExists($PDFRoot & $SourceFile & "5.PSF") = 1 Then Rename(5) If FileExists($PDFRoot & $SourceFile & "6.PSF") = 1 Then Rename(6) If FileExists($PDFRoot & $SourceFile & "7.PSF") = 1 Then Rename(7) If FileExists($PDFRoot & $SourceFile & "8.PSF") = 1 Then Rename(8) If FileExists($PDFRoot & $SourceFile & "9.PSF") = 1 Then Rename(9) If FileExists($PDFRoot & $SourceFile & "10.PSF") = 1 Then Rename(10) Until $Loop = 1 Exit Func Rename($1) $Random = Random(100, 900) $Source = $SourceFile & $1 & ".PSF" $ToConvert = "ToConvert" & $Random & ".PSF" $Converted = "ConvertedPDF" & $Random & ".PDF" FileMove($PDFRoot & $Source, $PDFRoot & $ToConvert, 1) $file = FileOpen($PDFRoot & "Queue.txt", 1) FileWriteLine($File, $PDFRoot & "X" & $Random & "Y" & $ToConvert & "Z" & $Converted & @CR) FileClose($File) EndFunc "I believe that when we leave a place, part of it goes with us and part of us remains... Go anywhere, when it is quiet, and just listen.. After a while, you will hear the echoes of all our conversations, every thought and word we've exchanged.... Long after we are gone our voices will linger in these walls for as long as this place remains." Link to comment Share on other sites More sharing options...
ken82m Posted February 28, 2004 Author Share Posted February 28, 2004 ahhhhh perfect thanks I'm actually monitoring for printed postsript files. It's not perfect sometimes if you print two small jobs too close to each other they overwrite but it works. You don't know of anyway to monitor the port or the printer in windows? Something more efficient than just checking for files every 1ms "I believe that when we leave a place, part of it goes with us and part of us remains... Go anywhere, when it is quiet, and just listen.. After a while, you will hear the echoes of all our conversations, every thought and word we've exchanged.... Long after we are gone our voices will linger in these walls for as long as this place remains." Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now