-
Fototrend

Új hozzászólás Aktív témák
-
beleszólok
senior tag
válasz
Sk8erPeter
#8315
üzenetére
Sokra nem mentek vele

namespace monosandbox
{
public class Hello
{
public static void Main(string[] argv){
int n = 0;
Console.WriteLine (System.IO.Directory.GetCurrentDirectory ());
using (StreamReader sr=File.OpenText("kern.log")) {
String s;
while ((s=sr.ReadLine()) != null) {
n++;
}
}
Console.WriteLine (n);
}
}
}Ennél primitívebb kódot nehéz lenne összehozni.
A StreamReader bufferelésével játszadoztam egy sort, de csak rontani tudtam rajta.
A fenti kód, így ahogy van, picit több, mint 22mp-ig fut - most lemértem.
Ugyanez a feladvány, csak pythonban 3.6mp.f=open("kern.log","r")
n=0
for i in f:
n+=1
print nValamit nagyon trükkösen csinál, mert ha a fenti kód helyett egy ilyet csinálok:
f=open("kern.log","r")
l=f.readlines()
print(len(l))akkor elvileg betölti memóriába az egész fájlt, gyakorlatilag iszonyat gyorsan végig tud menni rajta, még sincs bent minden, mivel a fájl közel akkora, mint a teszteléshez használt virtuális gép memóriája és az elég feltűnő, ha megtöltöm.
A readlines() helyett read()-t használva elég szembetűnő a különbség.
(1.6GB a fájl és 2GB-ja van a VM-nek)
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Xiaomi Pad 7 Pro - fél kiló, maradhat!
- Robotporszívók
- Kész, vége, ennyi volt: eladja tévés üzletágát a Sony
- Samsung Galaxy A56 - megbízható középszerűség
- Anglia - élmények, tapasztalatok
- Formula-1
- MasterDeeJay: i7 4980HQ asztali gépben (vs i7 4770)
- Tesla topik
- Kerékpárosok, bringások ide!
- Amatőr csillagászat
- További aktív témák...
- HIBÁTLAN iPhone 13 Pro 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3022
- Xiaomi Mi 11 Lite 6/128GB / 12 hó jótállás
- 200db SZETT! REFURBISHED - DELL Docking Station WD19S + 130W töltő
- billentyűzetek - kiárusítás - Logitech, Corsair, ASUS
- Dobozos! Xbox Series S 512 GB + kontroller 6 hó garancia, számlával!
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest



