Új hozzászólás Aktív témák
-
thon73
tag
Aha! Köszönöm. 1. pont alapján a kódot javítottam.
2. Eddig multithreadet (a rendszer által kínált lehetőségeken kívül) csak időzítési feladatokra használtam. Viszont - a log szigorításával - szükségem lett volna egy "saját" log-ra, amit akkor is használhatok, ha tableten dolgozom. A program nagyon egyszerű, egy file-ba írja az üzeneteket. ((Az esetleges összeomlás miatt a metódus nyitja-írja-zárja a file-t (flush is lehetne helyette, de az idő nem volt lényeges szempont)). Ilyen üzenet bármelyik thread-ről érkezhet, ezért szeretnénk biztos lenni abban, hogy működik.
Két megoldást találtam a figyelmeztetésed után:
private final Object lock = new Object();
private static String addTextToFileLog( File logFile, String text )
{
synchronized( lock )
{
OutputStreamWriter logStream = new OutputStreamWriter( new FileOutputStream(logFile, true));
logStream.append( text );
logStream.flush();
logStream.close();
}
}illetve:
private static synchronized String addTextToFileLog( File logFile, String text )
{
OutputStreamWriter logStream = new OutputStreamWriter( new FileOutputStream(logFile, true) );
logStream.append( text );
logStream.flush();
logStream.close();
}(A hibaellenőrzést az egyszerűség kedvéért töröltem.)
Van előnye egyik vagy másik megközelítésnek? Egyáltalán jó ez így, vagy valamit elnéztem?
Ha még abban tudnék egy kis segítséget kapni, hogy ezt hogyan tesztelhetem a szimpla próbálkozáson kívül, azt is megköszönném!
Új hozzászólás Aktív témák
- AMD Navi Radeon™ RX 9xxx sorozat
- Asztalos klub
- Formula-1
- Apple asztali gépek
- Spórolós topik
- AMD FX
- Dízelgenerátorral készül az áramszünetekre egy nagy felhőszolgáltató
- Milyen hangkártyát vegyek?
- Házimozi belépő szinten
- Meghozta az első, memórapánikból eredő áremelését az NVIDIA
- További aktív témák...
- Satechi numerikus pad, számbillentyűzet eladó
- Apple Magic Keyboard 2, numerikus billentyűk nélküli
- AZTA !!! Új Dobozos HP EliteBook 860 16 G10 Profi Üzleti Laptop -45% i7-1355U 32/512 OLED 2,8K 120Hz
- Beszámítás! Apple Mac Mini M4 16GB 256GB számítógép garanciával, hibátlan működéssel
- Beszámítás! Apple Mac Mini 2020 M1 8GB 512GB számítógép garanciával, hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RX 9060XT 16GB GAMER PC termékbeszámítással
- Asus TUF B760-Plus Wifi (apró hibával)
- Prémium! Bambulab bontatlan filamentek (PLA - PETG- ABS) ÁFÁS- számlával eladóak készletről!
- DELL PowerEdge R630 rack szerver - 2xE5-2650v3 (20 mag / 40 szál, 2.3/3.0GHz), 32GB RAM, 66921Ft+ÁFA
- Apple iPhone 12 128GB,Átlagos,Adatkabel,12 hónap garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

