Re: copymemory basic question
- From: "Donald Lessau" <don@xxxxxxxxxxxxxx>
- Date: Thu, 1 Sep 2005 10:01:23 +0200
"Karl E. Peterson" <karl@xxxxxxxx> schrieb im Newsbeitrag
news:uZPdWForFHA.2592@xxxxxxxxxxxxxxxxxxxxxxx
>
> Public Sub SwapStr05(s1 As String, s2 As String)
> Static lpTmp As Long
> ' Use PutMem4 and GetMem4 directly from runtime.
> ' This method requires no typelibs!
> lpTmp = StrPtr(s1)
> 'Call GetMem4(VarPtr(s1), lpTmp)
> Call PutMem4(VarPtr(s1), StrPtr(s2))
> Call PutMem4(VarPtr(s2), lpTmp)
> End Sub
>
Yeah, sweet!
Of course, I could not resist to test it against a non-Static version, and
again, non-Static came out clearly faster here (VB5, EXE, all opt). As
opposed to your results, weird.
SwapString/Call 1: "a", "b"
VB5-COMPILED/AllCompileOpt ON: 10 x 100000 iterations, 01.09.2005 09:58:00
System: Athlon XP 2000+, 512 RAM, Win XP Pro SP1, IE6.0
Rank - Rel.Time - Abs.Time - Routine - Description
3 - 1.64 - 0.082µs - SwapString09 -
1 - 1.00 - 0.050µs - SwapString10 -
2 - 1.35 - 0.068µs - SwapString11 - Static
SwapString09 = my previously posted CopyMemory version.
SwapString10 = your SwapStr05, but non-Static
SwapString10 = your SwapStr05, Static (as quoted above)
Don
.
- Follow-Ups:
- Re: copymemory basic question
- From: Karl E. Peterson
- Re: copymemory basic question
- References:
- Re: copymemory basic question
- From: Karl E. Peterson
- Re: copymemory basic question
- From: Donald Lessau
- Re: copymemory basic question
- From: Jim Mack
- Re: copymemory basic question
- From: Donald Lessau
- Re: copymemory basic question
- From: Karl E. Peterson
- Re: copymemory basic question
- From: Jim Mack
- Re: copymemory basic question
- From: Karl E. Peterson
- Re: copymemory basic question
- From: Jim Mack
- Re: copymemory basic question
- From: Karl E. Peterson
- Re: copymemory basic question
- Prev by Date: Re: Connecting to the Internet
- Next by Date: Re: API to get date/time from another machine (i.e. net time \\hostname)
- Previous by thread: Re: copymemory basic question
- Next by thread: Re: copymemory basic question
- Index(es):
Relevant Pages
|