Ú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
- Luck Dragon: Óraátállítás
- Márciusi pillanatkép a hardverpiacról
- Hyundai, Kia topik
- Apple iPhone 13 Pro Max - őnagysága
- Apple Watch
- Formula-1
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Witcher topik
- Utolérte az áremelés a PlayStation 5-öt
- Azonnali VGA-s kérdések órája
- További aktív témák...
- Apple Watch Series 9 (45mm) GPS - Fekete - Bontatlan gyári szíjjal!
- DELL VOSTRO 3668 PC, i5-7400 PROCI, MEMÓRIA ÉS SSD NÉLKÜL
- DELL VOSTRO 3668 PC, i5-7400 PROCI, 8GB DDR4 RAM, JOGTISZTA WINDOWS 11
- Dell Latitude 5290, 2 az 1 ben,12.5",FHD,i5-8350U,8GB DDR4,256GB SSD,WIN11
- iPhone 16 Pro 256GB gyári független megkímélt
- AKCIÓ! Apple MacBook Pro 14 M4 Max 36GB RAM 1TB SSD macbook garanciával hibátlan működéssel
- PlayStation 5 Slim (lemezes) + kontroller 2027.12.24-ig garancia, számlával!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- GAMER PC! Ryzen 5700X / 32GB DDR4 / RX 6800 XT / 512GB NVMe / 650w Gold! BeszámítOK
- Részletfizetés Kamatmentes 12 havi részlet Acer Predator 18 AI Gamer / Laptop RTX 5070 Ti Ultra 9
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
