2012-12-14 13 views
6

अब तक मैं अपने प्रोजेक्ट में थ्रेड को तुरंत लागू करके थ्रेडिंग मास्टर करने की कोशिश कर रहा हूं। और मैं इसे लंबे समय तक करने की कोशिश कर रहा हूं। लेकिन इसने नतीजे नहीं दिए हैं, न ही मुझे थ्रेडिंग के साथ कोई अनुभव दिया है। कोशिश करने का एकमात्र चीज मुझे यह इंप्रेशन है कि सी # में थ्रेडिंग में कई महत्वपूर्ण परिष्करण हैं।सी # थ्रेडिंग: शुरुआती के लिए व्यायाम

मुझे थ्रेडिंग के बारे में कोई आसान अभ्यास नहीं मिला। मैं उन अभ्यासों की तलाश में हूं जहां आपको विभिन्न सरल कंसोल एप्लिकेशन बनाना है। मैं सरल अभ्यास की तलाश में हूं इसलिए मुझे पता चल सकता है कि थ्रेड के साथ काम करते समय चीजें कैसे काम करती हैं और उस विचार को मास्टर करती हैं। मैंने कठिनाई के साथ प्रोग्रामिंग अभ्यास की एक पुस्तक देखी है जो समस्याग्रस्त हो जाती है क्योंकि समस्या का नंबर बड़ा हो जाता है। मैं कुछ इसी तरह की खोज कर रहा हूं। बाद में मैं अधिक जटिल सामग्री के साथ जारी रखूंगा और अपने प्रोजेक्ट में थ्रेड जोड़ने की कोशिश करूंगा (जो विंडोज फॉर्म के साथ बनाया गया है)।

मैं अभ्यास/सी # में सूत्रण के बारे में अभ्यास के किताब कहां मिल सकती है?

संपादित करें:

मैं किसी भी tutorials- के लिए नहीं देख रहा हूँ मैं उन्हें अपने आप को मिल सकता है। मैं केवल व्यायाम और व्यायाम की तलाश में हूं। यदि ऐसे कोई अभ्यास नहीं हैं, तो कृपया मुझे बताएं।

+0

बाहर चेक बुक विजुअल C# 2012 के साथ बातचीत में यह सूत्रण और कार्य कारखाने – cpoDesign

+0

एक बात वें के बारे में कवर लोड करता है यह समझना मुश्किल है कि थ्रेडिंग अधिकांश अनुप्रयोगों के प्रदर्शन में सुधार नहीं करती है। सुनिश्चित करें कि इसका उपयोग करने से पहले आपको इसकी आवश्यकता है। –

+0

मुझे यकीन है कि मुझे इसकी आवश्यकता है। – AlexSavAlexandrov

उत्तर

7

सरल व्यायाम की एक प्रति प्राप्त जानने के लिए करना चाहते हैं:

1) परिवर्तन कोड काम करता है (उदाहरण से सीख)

  • किसी भी ट्यूटोरियल खोलने
  • कोड नमूने खोजें
  • कोड के साथ खेलें ई नमूने, क्या काम करता है और क्या देखना नहीं
इतने पर (शिक्षण से सीख)

  • एक दिलचस्प सवाल लगता है

    2) सवालों के जवाब देने

  • जवाब यह (आप करने के लिए एक अनुसंधान करना चाहिए इस)
  • बात और अन्य उपयोगकर्ताओं
+0

अच्छा विचार। धन्यवाद! – AlexSavAlexandrov

0

थ्रेडिंग काफी सीधे आगे है। http://www.albahari.com/threading/

मूल बातें::

एक विधि है कि शून्य से वापस लौट कर नहीं तर्क लेता बनाएं यहाँ एक लोकप्रिय यह के बारे में कड़ी है। इस तरह:

private void MyThreadMethod() 
{ 
    //Some code here. 
} 

उस विधि को थ्रेड में कॉल करने के लिए बस इसे फ़ॉर्म पर एक बटन में करें।

var thread = new Thread(new ThreadStart(MyThreadMethod)); 
thread.Start(); 

कि एक धागा बनाने और इसे शुरू और MyThreadMethod में कोड चलेंगे।

अब, शैतान विवरण में है। थ्रेड की थ्रेड सुरक्षा और प्रबंधन वह जगह है जहां थ्रेडिंग और मल्टीटास्किंग की असली कला है। विचार करने की एक और बात थ्रेड बनाम कार्य है जो अधिक उपयोगकर्ता के अनुकूल हैं।

+0

और यही कारण है कि मुझे अभ्यास की आवश्यकता है: ज्ञान को मास्टर करने के लिए- मैं इसे तुरंत अपने प्रोजेक्ट में लागू नहीं कर सकता। – AlexSavAlexandrov

+0

मेरी पोस्ट के शीर्ष पर दिए गए लिंक पर जाएं। इसमें ट्यूटोरियल के कुछ स्तर हैं। मुझे सच में लगता है कि यह आपको जो चाहिए वह आपको देगा। – jmrnet

+0

मुझे अभ्यास की आवश्यकता है, ट्यूटोरियल नहीं, जिसके साथ मैं ज्ञान को कौशल में बदल सकता हूं। – AlexSavAlexandrov

4

जोसेफ अल्बाहारी के पास Threading in C# नामक एक महान लेख है। सी # में थ्रेडिंग के लिए सीखना शुरू करने के बारे में यह वास्तव में अच्छा ब्लॉग पोस्ट है। यूसुफ स्पष्ट रूप से व्याख्या:

  • परिचय और अवधारणाओं
  • जुड़ें और
  • कैसे थ्रेडिंग वर्क्स
  • नींद बनाना और धागे शुरू
  • थ्रेड

और पूलिंग जाँच codeproject से this बाहर लेख ।

  • एक Thread वस्तु instantiating और इसके प्रारंभ विधि को फोन करके प्रारंभ करना

आप बना सकते हैं और एक नया धागा शुरू कर सकते हैं।थ्रेड के लिए सबसे सरल कन्स्ट्रक्टर ThreadStart प्रतिनिधि लेता है: एक पैरामीटर रहित विधि इंगित करता है कि निष्पादन कहां शुरू होना चाहिए।

using System; 
using System.Threading; 

class ThreadTest 
{ 
    static void Main() 
    { 
     Thread t = new Thread (WriteY); // Kick off a new thread 
     t.Start(); // running WriteY() 
     // Simultaneously, do something on the main thread. 
     for (int i = 0; i < 1000; i++) Console.Write ("x"); 
    } 
    static void WriteY() 
    { 
     for (int i = 0; i < 1000; i++) Console.Write ("y"); 
     } 
} 

// Output: 
xxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyy 
yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyxxxxxxxxxxxxxxxxxxxxxx 
xxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy 
yyyyyyyyyyyyyxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
... 

आप गहराई से सूत्रण C# 4.0 in a Nutshell

+0

दो प्रगति सलाखों के बारे में ट्यूटोरियल अच्छा है। लेकिन आपका जवाब अभी भी मेरे प्रश्न का उत्तर नहीं दे रहा है। – AlexSavAlexandrov

संबंधित मुद्दे