Lotus Notes / Domino Sonstiges > Java und .NET mit Notes/Domino
Zeitmessungen für Java
flaite:
ok. Muß jetzt noch arbeiten. Um ca. 21 Uhr kann ich mich damit beschäftigen.
jBubbleBoy:
für LotusScript
--- Code: ---Sub Initialize
Dim filename$, filenum%
Dim t1, t2, a%, s$, b%
filename = "c:\temp\ls.txt"
For a = 0 To 99
s = s + "a"
Next
For b = 1 To 20
killFileName filename
t1 = Timer
filenum = Freefile()
Open filename For Output As filenum
For a = 0 To 999
Print #filenum, s
Next
Close(filenum)
t2 = Timer
Print b & " --> " & (t2 - t1) * 1000
Next
End Sub
Sub killFileName( FileName As String)
On Error Goto ErrorZ
Kill FileName
Goto EndeZ
ErrorZ:
Resume EndeZ
EndeZ:
End Sub
--- Ende Code ---
Ergebnis in Millisekunden
koehlerbv:
Das ist schlechter Code:
Dim t1, t2, a%, s$, b% -> t1 und t2 sind jetzt Variants. Kann in die Hose gehen
s = s + "a" -> + ist kein String-Concatenator
Print b & " --> " & (t2 - t1) * 1000 -> Typwandlung wird LS überlassen
Das Ganze geht hier gut, kann aber in der Praxis zu Ergebnissen führen, die ganz anders aussehen, als man beim Schreiben erwartet hätte. ;D
Bernhard
PS: Ich würde die Zeitmessung erst nach dem Anlegen des Files starten, sonst spielt hier die API des Systems mit herein und die Organisation der HDD.
flaite:
Hier sind die Ergebnisse für C#. Dennis will nach Hause. (Ergebnisse in Milisekunden).
1:49
2:91
3:7
4:7
5:7
6:31
7:7
8:30
9:7
10:7
11:7
12:7
13:7
14:23
15:44
16:36
17:21
18:7
19:7
20:7
--- Code: ---using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Diagnostics;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
for (int j = 1; j <= 20; j++)
{
Stopwatch watch = new Stopwatch();
watch.Start();
StringBuilder sb = new StringBuilder(100);
for (int i = 0; i < 100; i++)
{
sb.Append("a");
}
StreamWriter sw = File.CreateText("C:\\temp\\myCShark.txt");
for (int i = 0; i < 1000; i++)
{
sw.WriteLine(sb.ToString());
}
sw.Close();
watch.Stop();
Console.WriteLine(j.ToString() + ":" + watch.ElapsedMilliseconds.ToString());
}
Console.ReadLine();
}
}
}
--- Ende Code ---
Der Code kann sicher noch bedeutend optimiert werden. Das gleiche gilt für den bald folgenden Java Code.
jBubbleBoy:
@bernhard
Wie sieht denn ein "String-Concatenator" aus?
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln