- LordAthis: AI Kérdés érkezett - 3600 soros Spagetti kód refaktorálása és budget
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Elektromos rásegítésű kerékpárok
- eBay-es kütyük kis pénzért
- Tutti Georg: A Microsoft 2025. augusztusi biztonsági frissítései hibásak
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- GoodSpeed: Bye PET Palack, hello SodaStream
- sziku69: Szólánc.
- sh4d0w: Netflix? Ugyan, VW előfizetés!
-
LOGOUT
Ú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
Hirdetés
● olvasd el a téma összefoglalót!
- Acer, notebook, laptop, Ryzen 5 5500u, 16gb ddr4, 1tb ssd, 15.6 col
- Eladó 3. generációs I7-es számítógép
- ASUS ROG STRIX 850W 80 PLUS Gold - Garancia 2033.05.04
- Új Lenovo 14 Ideapad 5 FHD IPS i5-1235U 4.4Ghz 10mag 16GB 512GB SSD Intel Iris XE Win11 Garancia
- AMD Ryzen 7 5800X3D 8-Core 3.4GHz - AQUA garancia 2026.04.20
- ÁRCSÖKKENTÉS ASUS HD6870 videókártya
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- Bomba ár! HP EliteBook Folio 1040 G1 - i5-G4 I 8GB I 256GB SSD I 14" HD+ I Cam I W10 I Garancia!
- Xiaomi Redmi 10 128GB Kártyafüggetlen 1Év Garanciával
- GYÖNYÖRŰ iPhone 13 Pro 128GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3084, 95% Akkumulátor
Állásajánlatok
Cég: FOTC
Város: Budapest