इंटरप्ट मॉनिटर का उपयोग करके रूपांतरण या लोडिंग रोकें

परिचय

बड़ी एक्सेल फ़ाइलों के साथ काम करने में अक्सर लंबी प्रक्रियाएँ शामिल होती हैं जो समय और संसाधनों को खा सकती हैं। लेकिन क्या होगा अगर आप रूपांतरण प्रक्रिया को बीच में ही रोक सकें जब आपको लगे कि कुछ बदलने की ज़रूरत है? Aspose.Cells for .NET में इंटरप्ट मॉनिटर नामक एक सुविधा है, जो आपको किसी कार्यपुस्तिका के PDF जैसे दूसरे फ़ॉर्मेट में रूपांतरण को बाधित करने की अनुमति देती है। यह एक जीवनरक्षक हो सकता है, खासकर जब बड़ी डेटा फ़ाइलों के साथ काम करना हो। इस गाइड में, हम Aspose.Cells for .NET में इंटरप्ट मॉनिटर का उपयोग करके रूपांतरण प्रक्रिया को बाधित करने के तरीके के बारे में जानेंगे।

आवश्यक शर्तें

गोता लगाने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित चीजें मौजूद हैं:

  1. Aspose.Cells for .NET - इसे डाउनलोड करेंयहाँ.
  2. .NET विकास वातावरण - जैसे विजुअल स्टूडियो.
  3. C# प्रोग्रामिंग का बुनियादी ज्ञान - C# सिंटैक्स से परिचित होने से आपको आगे बढ़ने में मदद मिलेगी।

पैकेज आयात करें

शुरू करने के लिए, आइए आवश्यक पैकेज आयात करें। इन आयातों में शामिल हैं:

  • Aspose.Cells: एक्सेल फाइलों में हेरफेर करने के लिए मुख्य लाइब्रेरी।
  • सिस्टम.थ्रेडिंग: थ्रेड्स के प्रबंधन के लिए, क्योंकि यह उदाहरण दो समानांतर प्रक्रियाएँ चलाएगा।
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.IO;

आइए इस प्रक्रिया को विस्तृत चरणों में विभाजित करें। प्रत्येक चरण आपको Excel कार्यपुस्तिका रूपांतरण को प्रबंधित करने के लिए इंटरप्ट मॉनिटर को सेट अप करने और उपयोग करने के महत्व को समझने में मदद करेगा।

चरण 1: क्लास बनाएं और आउटपुट डायरेक्टरी सेट करें

सबसे पहले, हमें अपने फंक्शन को समाहित करने के लिए एक क्लास की आवश्यकता है, साथ ही एक डायरेक्टरी की भी आवश्यकता है जहां आउटपुट फ़ाइल को सेव किया जाएगा।

class StopConversionOrLoadingUsingInterruptMonitor
{
    static string outputDir = "Your Document Directory";
}

प्रतिस्थापित करें"Your Document Directory" उस वास्तविक पथ के साथ जहां आप पीडीएफ फाइल को सहेजना चाहते हैं।

चरण 2: इंटरप्ट मॉनिटर को इंस्टैंशिएट करें

इसके बाद, एक InterruptMonitor ऑब्जेक्ट बनाएँ। यह मॉनिटर किसी भी बिंदु पर प्रक्रिया को बाधित करने की क्षमता स्थापित करके प्रक्रिया को नियंत्रित करने में मदद करेगा।

InterruptMonitor im = new InterruptMonitor();

यह इंटरप्ट मॉनिटर हमारी कार्यपुस्तिका से जुड़ा होगा, जिससे हम रूपांतरण प्रक्रिया का प्रबंधन कर सकेंगे।

चरण 3: रूपांतरण के लिए कार्यपुस्तिका सेट करें

अब, आइए एक वर्कबुक ऑब्जेक्ट बनाएं, उसे इंटरप्टमॉनिटर असाइन करें, और फिर कुछ नमूना पाठ सम्मिलित करने के लिए पहली वर्कशीट तक पहुंचें।

void CreateWorkbookAndConvertItToPdfFormat()
{
    Workbook wb = new Workbook();
    wb.InterruptMonitor = im;
    Worksheet ws = wb.Worksheets[0];
    Cell cell = ws.Cells["J1000000"];
    cell.PutValue("This is text.");
}

उपरोक्त कोड एक कार्यपुस्तिका बनाता है, इसके लिए इंटरप्टमॉनीटर सेट करता है, और पाठ को दूर स्थित सेल में रखता है (J1000000) इस कक्ष स्थान पर पाठ रखने से यह सुनिश्चित होता है कि कार्यपुस्तिका को संसाधित करने में अधिक समय लगेगा, जिससे इंटरप्टमॉनीटर को हस्तक्षेप करने के लिए पर्याप्त समय मिलेगा।

चरण 4: कार्यपुस्तिका को PDF के रूप में सहेजें और व्यवधान को संभालें

अब, आइए कार्यपुस्तिका को PDF के रूप में सहेजने का प्रयास करें। हम एक का उपयोग करेंगेtry-catch किसी भी संभावित व्यवधान से निपटने के लिए ब्लॉक बनाया गया है।

try
{
    wb.Save(outputDir + "output_InterruptMonitor.pdf");
}
catch (Aspose.Cells.CellsException ex)
{
    Console.WriteLine("Process Interrupted - Message: " + ex.Message);
}

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

चरण 5: रूपांतरण प्रक्रिया को बाधित करें

यहाँ मुख्य विशेषता प्रक्रिया को बाधित करने की क्षमता है। हम इसका उपयोग करके देरी जोड़ेंगेThread.Sleep और फिर कॉल करेंInterrupt() 10 सेकंड के बाद रूपांतरण को रोकने की विधि।

void WaitForWhileAndThenInterrupt()
{
    Thread.Sleep(1000 * 10);
    im.Interrupt();
}

यह विलंब कार्यपुस्तिका को व्यवधान संकेत भेजे जाने से पहले पीडीएफ में रूपांतरण शुरू करने का समय देता है।

चरण 6: थ्रेड्स को एक साथ निष्पादित करें

सब कुछ एक साथ लाने के लिए, हमें दोनों फ़ंक्शन को अलग-अलग थ्रेड में शुरू करना होगा। इस तरह, वर्कबुक रूपांतरण और इंटरप्ट प्रतीक्षा एक साथ हो सकती है।

public void TestRun()
{
    ThreadStart ts1 = new ThreadStart(this.CreateWorkbookAndConvertItToPdfFormat);
    Thread t1 = new Thread(ts1);
    t1.Start();
    ThreadStart ts2 = new ThreadStart(this.WaitForWhileAndThenInterrupt);
    Thread t2 = new Thread(ts2);
    t2.Start();
    t1.Join();
    t2.Join();
}

उपरोक्त कोड चलता हैCreateWorkbookAndConvertItToPdfFormat औरWaitForWhileAndThenInterrupt समानांतर थ्रेड्स में, दोनों प्रक्रियाएं समाप्त होने के बाद उन्हें जोड़ना।

चरण 7: अंतिम निष्पादन

अंत में, हम एक जोड़ेंगेRun() कोड निष्पादित करने की विधि.

public static void Run()
{
    new StopConversionOrLoadingUsingInterruptMonitor().TestRun();
    Console.WriteLine("StopConversionOrLoadingUsingInterruptMonitor executed successfully.");
}

यहRun विधि कार्रवाई में रुकावट को शुरू करने और देखने के लिए प्रवेश बिंदु है।

निष्कर्ष

इस ट्यूटोरियल में, हमने .NET के लिए Aspose.Cells में रूपांतरण प्रक्रिया को बाधित करने का तरीका खोजा। बड़ी Excel फ़ाइलों के साथ काम करते समय इंटरप्ट मॉनिटर एक उपयोगी उपकरण है, जो आपको प्रक्रियाओं को पूरा होने की प्रतीक्षा किए बिना रोकने की अनुमति देता है। यह विशेष रूप से उन परिदृश्यों में उपयोगी है जहाँ समय और संसाधन कीमती हैं, और त्वरित प्रतिक्रिया की आवश्यकता है।

अक्सर पूछे जाने वाले प्रश्न

Aspose.Cells for .NET में इंटरप्ट मॉनिटर क्या है?

इंटरप्ट मॉनिटर आपको कार्यपुस्तिका रूपांतरण या लोड प्रक्रिया को बीच में ही रोकने की सुविधा देता है।

क्या मैं पीडीएफ के अलावा अन्य प्रारूपों के लिए इंटरप्ट मॉनिटर का उपयोग कर सकता हूं?

हां, आप अन्य समर्थित प्रारूपों में भी रूपांतरण को बाधित कर सकते हैं।

थ्रेड.स्लीप() इंटरप्ट टाइमिंग को कैसे प्रभावित करता है?

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

क्या मैं 10 सेकंड से पहले प्रक्रिया को बाधित कर सकता हूं?

हां, देरी को संशोधित करेंWaitForWhileAndThenInterrupt() कम समय के लिए.

क्या व्यवधान प्रक्रिया से प्रदर्शन पर प्रभाव पड़ेगा?

इसका प्रभाव न्यूनतम है, तथा यह दीर्घकालिक प्रक्रियाओं के प्रबंधन के लिए अत्यधिक लाभदायक है। अधिक जानकारी के लिए देखें.NET के लिए Aspose.Cells दस्तावेज़ीकरण यदि आपको सहायता की आवश्यकता हो तो देखेंसहयता मंचया प्राप्त करेंमुफ्त परीक्षण.