2012-09-02 9 views
8

पर हिट के लिए इतनी तेज खोज निष्पादित करता है कि ग्रहण सभी मैचों के लिए एक वाक्यांश (यहां तक ​​कि एक regexp वाक्यांश) आश्चर्यजनक रूप से तेज़ एक बड़ी परियोजना में खोज करता है।ग्रहण एक वाक्यांश/regexp

क्या वे आंतरिक रूप से java.util.regex का उपयोग करते हैं?
मुझे लगता है कि वे एक खोज इंजन के साथ अनुक्रमित नहीं हैं, क्योंकि उनके लिए खोज बहुत धीमी है, फिर भी ग्रहण शुरू करने के बाद पहली बार कुछ देर हो रही है।

+0

मैं वे कुछ इंडेक्सर जिसका अनुक्रमित .metadata/.plugins/org.eclipse.jdt.core – Vikdor

+0

लेकिन इंडेक्सर किराया नहीं होगा में जमा हो जाती प्रयोग करते हैं लगता है सामान्य रेगेक्स खोज के साथ बहुत अच्छी तरह से, जो ग्रहण में काफी तेज़ लगता है। –

+6

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

उत्तर

1

ग्रहण हेलीओस (3.6) में एक्लिप्स पीडीटी, 2.2 का लेबल वाला एक बेहतर संस्करण शामिल है। यह वर्तमान ज़ेंड स्टूडियो (7.1 और ऊपर) में भी शामिल है। अन्य संवर्द्धनों के अलावा, यह कोड लुकअप से संबंधित कार्यों जैसे प्रदर्शन संदर्भ, एक प्रकार पदानुक्रम और यहां तक ​​कि कोड पूर्ण करने के प्रदर्शन में नाटकीय रूप से सुधार हुआ। यह नए डिजाइन के कारण है, जो एनवायर द्वारा प्रेरित है, जो इस डेटा के लिए लगातार स्टोरेज के रूप में एच 2 डेटाबेस इंजन का उपयोग करता है।

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

स्रोत: http://www.nwiresoftware.com/blogs/nwire/2010/09/five-tips-speeding-eclipse-pdt-and-nwire

संक्षेप में, यह क्योंकि ग्रहण डेटाबेस इंजन का इस्तेमाल करता है की तरह है कि ये सुधार देख रहे हैं लग रहा है।

फिर, यदि आप थोड़ा गहरा खोदते हैं, तो यहां quick sampling if the H2 source code है; यह वास्तव में दिखता है जैसे वे java.util.regex लाभ कर रहे हैं:

20 import java.util.regex.Matcher; 
21 import java.util.regex.Pattern; 
संबंधित मुद्दे