मैं कुछ फाइलों को एक फाइल में लिखना चाहता हूं। इसलिए, मैंने BufferedWriter कक्षा का उपयोग किया। चूंकि कई धागे उस फ़ाइल को लिखते हैं, इसलिए मैं जानना चाहता हूं कि और लिखने के लिए विधियां परमाणु हैं या नहीं।लेखक एक परमाणु विधि है?
इसके अलावा, मैं चाहता हूं कि प्रोग्राम एकाधिक फ़ाइलों में आउटपुट लिखने के लिए, और प्रति फ़ाइल 100 लाइनें (file.txt0, file.txt1, ... कहें)। उदाहरण के लिए
public class Main {
static ExecutorService exec = Executors.newFixedThreadPool(5);
BufferedWriter bw;
public class myWriter implements Runnable {
String str;
myWriter (String str) {
this.str = str;
}
public void run() {
bw.write(str);
bw.writeLine();
}
}
public static void main(String[] args) {
bw = new BufferedWriter(new FileWriter("train.txt"));
for (String arg: args)
exec.execute(new myWriter(arg));
exec.awaitTermination(100000, TimeUnit.MILLISECONDS);
}
}
क्या कोई मेरी मदद कर सकता है? अगर वे परमाणु नहीं हैं, तो मैं उन्हें परमाणु कैसे बना सकता हूं और टकराव से बच सकता हूं?
+1। जानकार अच्छा लगा। – Mudassir
अच्छा काम। अगर मैं इसे कई फाइलों में आउटपुट लिखना चाहता हूं, प्रति फ़ाइल 100 लाइनें, मैं क्या कर सकता हूं? – orezvani
@emab, यह निर्भर करता है। आपको अपने प्रश्न को और सटीक विवरण के साथ संपादित करना होगा कि आप वास्तव में क्या करना चाहते हैं (: – Marcelo