* * Den opfordring til at skylle vil gøre brug af det nuværende navn på * den kaldende metode og bogføre de aktuelle data til * commons logning * * Opkaldet til setNameOfCaller () skal være synkroniseret, så * at navnet ikke går tabt mellem den indstillede og opkaldet * at skylle () * * Flush er sikker på at blive kaldt hensigtsmæssigt på grund af den * PrintWriter konstruktør bliver kaldt med autoFlush = true.
* * Navnet på den kaldende metode * skal * opnås i * PrintWriter metoder, ellers uvedkommende metodekald * ind imellem gør det umuligt at bestemme den faktiske * der ringer * * /Override offentlige PrintStream append (char c) {lås. låse(); prøv {setNameOfCaller (lock); tilbage super.append (c); } endelig {lock.unlock (); }}Override Offentlige PrintStream append (CharSequence CSQ) {lock.lock (); prøv {setNameOfCaller (lock); returnere super.append (CSQ); } endelig {lock.unlock (); }}Override Offentlige PrintStream append (CharSequence CSQ, int start, int ende) {lock.
lock