- Katılım
- 5 Mart 2014
- Mesajlar
- 5.701
- Makaleler
- 12
- Çözümler
- 44
Kendi fonksiyon kütüphaneme sahibim. Hem JAVA hem C# için geçerli. Yaptığım testte JAVA performansının düşük, C# performansının yüksek olduğunu fark ettim.
JAVA testinde 2.5 MB'lık dosyayı yazmak 16.5 saniye sürdü.
C# testinde aynı dosya yazma işlemi 20 milisaniye sürdü.
Sonuç olarak C# daha hızlı olsa da ben bu sorunun JAVA fonksiyonunda tüm satırları tek tek okuttuğum için olduğunu düşünüyorum. Peki bunu çözmek için ne yapabilirim? Önerilerinizi bekliyorum.
JAVA testinde 2.5 MB'lık dosyayı yazmak 16.5 saniye sürdü.
Java:
long Time = System.currentTimeMillis();
Functions.ConsoleMsg("Başlangıç -> " + Time);
Functions.UpdateText("c.log", "Test");
long Time2 = System.currentTimeMillis();
long Time3 = Time2 - Time;
Functions.ConsoleMsg("Bitiş -> " + Time2);
Functions.ConsoleMsg(Time3 + " milisaniye sürdü.");
public static void UpdateText(String File, String Value)
{
try
{
File Fl = new File(File);
Scanner Sc = new Scanner(Fl);
String Val = "";
while (Sc.hasNextLine())
{
Val += Sc.nextLine() + "\n";
}
Sc.close();
PrintStream Ps = new PrintStream(Fl);
Ps.print(Val + Value);
Ps.close();
}
catch (IOException e)
{
System.out.println(e);
}
}
C#:
long Time = DateTime.Now.Millisecond;
Console.WriteLine("Başlangıç -> " + Time);
File.WriteAllText("c.log", File.ReadAllText("c.log") + "\nTest");
long Time2 = DateTime.Now.Millisecond;
long Time3 = Time2 - Time;
Console.WriteLine("Bitiş -> " + Time2);
Console.WriteLine(Time3 + " milisaniye sürdü.");
Console.ReadKey();
Sonuç olarak C# daha hızlı olsa da ben bu sorunun JAVA fonksiyonunda tüm satırları tek tek okuttuğum için olduğunu düşünüyorum. Peki bunu çözmek için ne yapabilirim? Önerilerinizi bekliyorum.