ghci
के लिए, मैं सीमित कर सकते हैं जब मैं पूरे कार्यक्रम संकलन स्मृति GHCi द्वारामैं runghc के लिए आरटीएस विकल्प कैसे पास कर सकता हूं?
$ ghci +RTS -M10m -RTS
उपयोग कर सकते हैं, मुझे लगता है मैं कैसे कर सकते हैं कर सकते हैं
$ ghc -rtsopts a.hs
तो
$ ./a +RTS -M10m
runghc a.hs
के लिए? मैंने कई तरीकों की कोशिश की है, जैसे runghc a.hs +RTS -M10m
, लेकिन उनमें से कोई भी काम नहीं कर रहा है। एकमात्र विकल्प मैं स्मृति सीमित हो सकती है
$ export GHCRTS='-M10m'
$ runghc a.hs
से था, लेकिन मैं यह केवल एक बार होना चाहते हैं, तो मैं runghc
तर्क पारित करके यह कर पसंद करते हैं।
संपादित करें: मैं जाँच कर रहा हूँ विकल्प या काम कर रहा है नहीं निम्नलिखित रणनीति का प्रयोग (सिर्फ इसलिए कि मैं बेहतर तरीके पता नहीं है) या नहीं:
-- a.hs
f x = f (f x)
main = print $ seq (f 0) 0
ओपन दो टर्मिनलों, एक top
के लिए कोड निष्पादित करने के लिए कमांड और दूसरा। अगर निष्पादन "ढेर थक गया" कहता है, तो मैंने निष्कर्ष निकाला है कि -M[number]m
काम कर रहा है। यदि निष्पादन जारी रहता है और बड़ी मात्रा में स्मृति का उपयोग करता है, तो मैं प्रक्रिया को मारता हूं और निष्कर्ष निकालता हूं कि यह सफल नहीं हुआ है।
'runghc + RTS -M10m a.hs' या' runghc -rtsopts a.hs + RTS -M10m'? (बस अनुमान लगा रहा है) – Dogbert
@ डोगबर्ट दोनों ने कोशिश की, और न ही काम किया। वैसे भी धन्यवाद :( – Yosh
आप कैसे जांच रहे हैं कि ध्वज प्रोग्राम से सेट है या नहीं? – Dogbert