*   >> läser Utbildning artiklar >> science >> programming

Java: Hur man omdirigera stderr och stdout till Commons Logging, med den anropande Class

1) avkastning; annars outputStream.setNameOfCaller (); } /* * * Åsido alla tryck & lägga metoder för PrintWriter * * Varje metod lägger till en kontroll för den aktuella namnet på den anropande metoden, * och samtidigt synkroniserade ringa ett samtal som kan eller * kan inte kalla flush. * * Den uppmaning att spola kommer att utnyttja den nuvarande namn * anropsmetoden och efter aktuella data till * commons loggning * * Samtalet till setNameOfCaller () måste synkroniseras så * att namnet inte går förlorad mellan set och samtals * att spola () * * Flush är säker på att kallas lämpligt på grund av * PrintWriter konstruktören kallas med autoFlush = true.

* * Namnet på den uppringande metod * måste * fås i * PrintWriter metoder, annars främmande metodanrop * däremellan gör det omöjligt att fastställa de faktiska * ringer * * /Override offentliga Print append (char c) {lås. låsa(); try {setNameOfCaller (lås); retur super.append (c); } slutligen {lock.unlock (); }}Override Offentliga Print append (CharSequence CSQ) {lock.lock (); try {setNameOfCaller (lås); retur super.append (CSQ); } slutligen {lock.unlock (); }}Override Offentliga Print append (CharSequence CSQ, int start, int slut) {lock.lock (); try {setNameOfCaller (lås); retur super.

append (CSQ, start, slut); } slutligen {lock.unlock (); }}Override Public void print

Page   <<  [1] [2] [3] [4] [5] [6] >>
Copyright © 2008 - 2016 läser Utbildning artiklar,https://utbildning.nmjjxx.com All rights reserved.