Hirdetés
-
GAMEPOD.hu
Ú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)[ Szerkesztve ]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Egészséges életmód
- Autós topik
- Milyen billentyűzetet vegyek?
- Építő/felújító topik
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Okos Otthon / Smart Home
- Belekezdeni egy vállalkozásba
- Házimozi belépő szinten
- Hosszabb ideig maradna a TSMC-nél az Intel
- Kínai és egyéb olcsó órák topikja
- További aktív témák...
- Bontatlan 3 év garanciális Asus TUF 5090 számlával
- Nintendo Switch OLED 19.0.1 + Android 15, 512GB MicroSD + okositott OLED Atmosphere 3 hó garanciával
- EliteBook 845 14 G10 14" FHD+ IPS Ryzen 5 PRO 7540U 16GB DDR5 512GB NVMe gar
- Ringfit Adventure
- Ej-ha Lenovo Thinkpad T14s G2 Üzleti "Golyóálló" Laptop 14" -60% i5-1135G7 4Mag 16GB /512GB FHD IPS
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest