पैकेज, रिपॉज़िटरी और ऐप श्रेणियाँ खोजें

पैकेज विवरणv2.0.1

throttling

थ्रॉटलिंग और डीबाउंसिंग एसिंक हेल्पर क्लासेस के साथ लिस्टनर्स के साथ समावेश

AndroidiOSWebmacOSWindowsLinux
30-दिन डाउनलोड
17.9 हज़ार
लाइक
44
Pub अंक
140

पैकेज इंस्टॉल करें

flutter pub add throttling

पैकेज अवलोकन

सार्वजनिक जानकारी से बना चयन मार्गदर्शन। केवल संदर्भ हेतु।

थ्रॉटलिंग पैकेज डार्ट एप्लिकेशन में थ्रॉटलिंग और डीबाउंसिंग के लिए एसिंक हेल्पर क्लासेस प्रदान करता है। यह विकासकर्ताओं को कार्यों के निष्पादन की दर को नियंत्रित करने में सक्षम बनाता है, जिससे उपयोगकर्ता इनपुट या नेटवर्क अनुरोध जैसी तेज़ घटनाओं के दौरान अत्यधिक कॉल को रोका जा सकता है। आंतरिक लिस्टनर समर्थन के साथ, यह प्लेटफॉर्म के बीच देरी या दर-सीमित ऑपरेशन के प्रबंधन को सरल बनाता है। प्रतिक्रियाशील UI और रियल-टाइम डेटा हैंडलिंग में प्रदर्शन को अनुकूलित करने के लिए आदर्श है।

उपयोग

  • उपयोगकर्ता इनपुट इवेंट की दर सीमित करना
  • नेटवर्क रिक्वेस्ट आवृत्ति को अनुकूलित करें
  • UI प्रतिक्रियाशीलता में सुधार करें
  • रियल-टाइम डेटा अपडेट का प्रबंधन
  • अतिरिक्त गणनाओं को कम करना
  • स्क्रॉल या आकार परिवर्तन इवेंट का हैंडल करना

मुख्य विशेषताएँ

  • थ्रॉटलिंग और डीबाउंसिंग उपकरण
  • लिस्टनर के साथ एसिंक संगत
  • क्रॉस-प्लेटफ़ॉर्म समर्थन
  • दर सीमा के लिए सरल API
  • निर्मित रद्द करने का हस्ताकरण
  • सिंक और एसिंक फंक्शन दोनों के लिए समर्थन

इनके लिए उपयुक्त

  • प्रतिक्रियाशील Flutter ऐप बनाने वाले विकासकर्ता
  • घटना दर नियंत्रण की आवश्यकता वाली टीमें
  • अक्सर उपयोगकर्ता इंटरैक्शन वाले ऐप्स
  • रियल-टाइम डेटा प्रोसेसिंग के मामले
  • प्रदर्शन-महत्वपूर्ण एप्लिकेशन

विचार योग्य बातें

  • असिंक्रोनस फ्लो की समझ की आवश्यकता है
  • यदि प्रतिबंध बहुत कठोर हैं, तो लेटेंसी में वृद्धि हो सकती है
  • तुरंत कार्यान्वयन की आवश्यकता के लिए उपयुक्त नहीं
  • मेमोरी लीक से बचने के लिए सुनने वालों का प्रबंधन करना आवश्यक है
  • राज्य प्रबंधन पैटर्न के साथ सबसे अच्छा उपयोग किया जाता है

मूल README

संबंधित सोर्स रिपॉज़िटरी के मूल README का स्नैपशॉट। नवीनतम सामग्री के लिए रिपॉज़िटरी देखें।

THROTTLING DART LIBRARY

contain "throttling" and "debouncing" classes

Actions Status Coverage Pub License: MIT Effective Dart Star on Github

Using

See a demonstration of use at dartpad.dev

Throttling example
final thr = Throttling<void>(duration: const Duration(milliseconds: 200));
thr.throttle(() {print(' * 1');}); // print ' * 1'
await Future<void>.delayed(const Duration(milliseconds: 100));
thr.throttle(() {print(' * 2');});
await Future<void>.delayed(const Duration(milliseconds: 100));
thr.throttle(() {print(' * 3');}); // print ' * 3'
thr.close();
Debouncing example
final deb = Debouncing<void>(duration: const Duration(milliseconds: 200));
deb.debounce(() {print(' * 1');});
await Future<void>.delayed(const Duration(milliseconds: 100));
deb.debounce(() {print(' * 2');});
await Future<void>.delayed(const Duration(milliseconds: 100));
deb.debounce(() {print(' * 3');});
await Future<void>.delayed(const Duration(milliseconds: 200));
// print ' * 3'
deb.close();

श्रेणियाँ

सोर्स रिपॉज़िटरी

इस पैकेज का उपयोग करने वाले प्रोजेक्ट