Question about the "Start" command that is admittedly not too important and just out of curiosity...

May 24, 2010
855
0
Northlake, Il
Well, since I haven't yet gotten any answers re. my previous question(s) about "@ExecStr" ;) , I am now in the middle of rewriting things to use the "Start" command instead of the "@Exec..." function. And this is a case, where while not at all what I would call real important, I can't help but wonder what the "performance" impact is, if any.

So, as I starting point, I've always had the impression that, from the user's perspective, a batch file was essentially the same thing as a "program" (i.e., .exe file) except that the interpreter in TCC was used to execute it, and therefore, if a file to be executed had a ".btm" extension, a (new) TCC instance would be implicitly automatically started to execute it when attempting to run it from the "Start" command with no differences between that and executing just an ".exe" file, for instance.

Well, this is yet another case where that "impression" seems to have been wrong. You see, I was starting a new batch file by using (this is for example, only; although it is an example that has been tested) something like "Start /L "Do Essentially Nothing" DoEssentiallyNothing" where "DoEssentiallyNothing" was a .btm file that just echoed "Did Nothing!!!", and this mostly worked other than the unexpected error message at the top of the newly-created TCC Window "TCC: (Sys) The parameter is incorrect. "/L"", clearly not what I was expecting. Well, I was not at all surprised to figure out that this was not at all an issue when I replace the above "Start" command with "Start "Do Essentially Nothing" /L TCC DoEssentiallyNothing" in which I, as you can easily see, explicitly invoke TCC to run the batch file. Well, to put it simply, I was trying to use the "/L" parameter to speed up things a bit by not making the start command copy aliases, the directory history, and the list of defined functions because I thought that things would run faster if all of those things didn't happen. And, since I have to explicitly invoke TCC to run the batch file to use any of the "/L." parameters, I can't help but wonder if just running the batch file "natively" without the "/L." parameters would be faster than explicitly invoking TCC (which then has to "evaluate" whether what is being executed is a batch file a second time rather than allowing the "Start" command itself to implicitly determine that fact). But I will also note here that #1. The may be no "performance" penalty at all, and #2. Explicitly invoking TCC directly (rather than having the "Start" command implicitly invoking it) might actually faster than the first alternative. So the question is, which is it?
 

rconn

Administrator
Staff member
May 14, 2008
12,344
149
So, as I starting point, I've always had the impression that, from the user's perspective, a batch file was essentially the same thing as a "program" (i.e., .exe file) except that the interpreter in TCC was used to execute it, and therefore, if a file to be executed had a ".btm" extension, a (new) TCC instance would be implicitly automatically started to execute it when attempting to run it from the "Start" command with no differences between that and executing just an ".exe" file, for instance.

START will *always* start a new session, regardless of whether the command is an internal, external, batch file, or alias.

Using /L might shave a couple of milliseconds off the batch file execution time -- but it'll probably also not work as expected unless you never use aliases, user-defined functions, or set anything in your TCSTART. If you ran that batch file a few million times, the time savings might approach a fraction of the time you spent wondering about it and composing your message.
 
Similar threads
Thread starter Title Forum Replies Date
M A question about the "Start" command in Windows 7 Support 13
C forum Posting Question... Support 3
C question re: Move Support 3
S How to? Upgrade Question: What supporting documentation is required at time of purchase? Support 2
Peter Murschall Documentation Question to %@PSHELL Support 4
Fross Tab Question Support 6
Fross Quick Function Question Support 17
Dick Johnson Question about the Touch command Support 0
rps Documentation "Copy+Paste+run" question Support 2
vefatica SFTP question Support 17
vefatica Question about IPWorks Support 0
C How to? SHORTCUT question..... Support 6
vefatica TPIPE, crash and question Support 1
C Question / Suggestion Support 1
MickeyF Another TPIPE question Support 6
vefatica Another @EVERYTHING question Support 4
mikea How to? %@everything[] question Support 10
A License Question for Single User Support 5
Jay Sage Help Correction (and Related Question) Support 0
S Elapsed time in TCC prompt question Support 0
H command line parsing question Support 5
C Forum question Support 2
B Newbie here, I have a question. Support 4
J Dumb Question ... Support 4
Timothy Byrd Updating from TC 9 to TC 17 - TCTOOLBAR question Support 2
M A possibly stupid question about the "del" command... Support 7
M A just out of curiosity question re @DiskTotal Support 4
Fross Status Bar Time Question Support 1
A Stupid, obvious question - launch a BAT with TC Support 10
C How to? GLOBAL question Support 5
vefatica OT: VisualStudio question Support 1
vefatica Wildcard question Support 4
Dan Glynhampton v15 installer question Support 2
C Move question with Encrypted file... Support 6
M Maybe Maybe I'm being stupid (again), but a simple question... Support 4
C Message Board question Support 1
James Miller How to? filename completion question Support 1
C coding question Support 3
M A just-out-of-curiosity question because it's ... Support 6
Frank question to FOLDERMONITOR Support 14
C Dumb titleprompt question Support 4
M Upgrade Question Support 2
S option /u question Support 19
M How to? A probably stupid question re "@Files" and Include Lists... Support 2
M Just an out-of-curiosity question re. "Do ... /P ..." Support 31
M How to? An admittedly somewhat silly question regarding elevation... Support 2
M Just an out-of-curiosity question the List command vs. the @Lines function... Support 13
M PDir format question... Support 3
M A question about file compression that is just out of curiosity... Support 2
M How to? A very simple question re. the current line number in a batch file... Support 2

Similar threads