2010-11-21 59 views
9

我想得到與Python腳本運行速度一樣快的簡短Scala腳本,特別是在腳本啓動時間方面。改善Scala腳本啓動時間 - 客戶端模式?

任何人都可以推薦一些方法來做到這一點,例如不涉及與GCJ編譯?

我能想到的一種方法是使用JVM的客戶端模式運行腳本,但我似乎無法得到此工作。一個例子(知名的)shebang爲此會很好。

更新:我意識到其他問題,但不認爲迄今爲止找不到任何可行的答案,因爲我正在尋找可在STANDARD安裝上工作的解決方案,而無需其他要求。這就是我試圖解決的問題,「不涉及與GCJ編譯,例如」。

看起來-client模式是爲了這個明確的目的而設計的,但是出於某種原因從scala腳本激活只是尷尬。

+0

將Scala腳本的速度與Python腳本進行比較的原因與將此處降落到此處的原因完全相同:) – 2013-09-04 10:39:30

回答

6

由於manyotherquestions已經去過,如果只能知道如何找到它們,請使用Nailgun

提高腳本性能的其他方法是在系統引導時啓動fsc,因此它可用於腳本,並使用-savecompiled以避免重複編譯腳本。

編輯

你提到-client模式,但我認爲這真的不是一個好的選擇。這個會給你一個更慢的Scala編譯器,如果不是Java,那麼對於提高編譯器本身的啓動時間幾乎沒有什麼作用。 fsc作爲後臺進程,運行時間爲-server,和/或用-savecompiled保存已編譯的腳本更好。

現在,我不知道你在-client上遇到了什麼問題,但是我已經讀過它不適用於64位JVM。可能是你的情況?

PS:查找similar問題,我注意到JRuby已經內置Nailgun支持!

+2

Nutter,Jruby小夥子(4的1,我認爲)有這個非常有用的帖子:http://blog.headius .com/2009/01/my-favorite-hotspot-jvm-flags.html – 2010-11-22 13:48:56

+0

也是:http://groups.google.com/group/jvm-languages/browse_frm/thread/3052f5cdb929e9ee# – 2010-11-22 13:56:40

+0

謝謝,但我是意識到這些。我真的只是尋找一種能夠在標準設置上運行的東西,而不是像甲stuff那樣的東西。對不起,如果不明確。 – 2010-11-23 14:41:54