कृपया मुझे बताएं कि क्यों पैरामीटरेटेड थ्रेडस्टार्ट कक्षा केवल उस विधि को अनुमति देती है जो केवल System.object तर्क प्रकार में होती है।पैरामीटरेटेड थ्रेडस्टार्ट केवल ऑब्जेक्ट पैरामीटर की अनुमति क्यों देता है?
public class MainThreadTest
{
public static void Main(string[] args)
{
Thread T = new Thread(new ParameterizedThreadStart(DisplayYOrX));
T.Start("X");
DisplayYOrX("Y");
}
static void DisplayYOrX(object outValue)
{
string Parameter = (string)outValue;
for(int i=0; i<10; i++)
Console.Write(Parameter);
}
}
मैं इस बारे में क्यों जानना चाहता हूं कि मैं फिर से टाइप कास्ट सिंटैक्स का उपयोग नहीं करना चाहता हूं।
string Parameter = (string)outValue;
मैं डेवलपर हैं जो 2.0 .net ढांचे का उपयोग के लिए के रूप में लगता है, संस्करण, लैम्ब्डा उपयोग करने के लिए मुश्किल है। क्या मैं सही हूँ ? –
@ फ्रैंक मैंने अभी एक संस्करण शामिल करने के लिए अपना उत्तर अपडेट किया है जो 2.0 सी # कंपाइलर के साथ काम करेगा। नोट: लैम्ब्डा सिंटैक्स का उपयोग 2.0 ढांचे में भी मान्य है बशर्ते आप सी # 3.0 या उच्च संकलक का उपयोग करें। किसी भी तरह से, मैंने जो दूसरा नमूना रखा है, वह सबकुछ सी # 2.0 और – JaredPar
के साथ काम करेगा, मैं वास्तव में जिस तरह से कहा था कि हम 2.0 ढांचे में लैम्ब्डा सिंटैक्स का उपयोग कर सकते हैं। तो, क्या आप कृपया मुझे बता सकते हैं कि हम इसे कैसे कर सकते हैं। कोई संदर्भ लिंक? –