2016-11-04 10 views
2

私の主なアクティビティに添付されている私のサービスで、stackoverflowエラーが発生します。私のサービス内でスタックサイズを変更する方法はありますか?しかし、私はXssパラメータに遭遇しましたが、明らかにVMオプション(Help-> Edit vmoptions)では利用できません。Androidアプリケーションでスタックのサイズ(スレッドのサイズ)を変更するにはどうすればよいですか?

背景のビット: 私はコード内のシリアライズされた機械学習モデルを読んで、それをデシリアライズしようとしたとき、私はエラーを取得しています。このモデルが小さなデータセットで構築されている場合でも同じ機能がうまく動作しますが、より大きいdaatsetを使用して同じモデルを構築しても機能しません。

どうすればいいですか?

+0

私はあなたにその前にコードを最適化する必要があると思っています – zombie

+0

@zombie私は "Neural Network Classifier"大きなデータセットを作成したので、コードの最適化で何かをしなければならないとは思いません。 – utengr

+0

あなたはAndroidを試しましたか:largeHeap = "true" – zombie

答えて

2

あなたはしかし、あなたが新しいスレッドを作成し、このコンストラクタを使用して、新しいスレッドのスタックサイズを設定することができ、あなたのアプリケーションのスタックサイズを変更することはできません。

コンストラクタThread (ThreadGroup group, Runnable target, String name, long stackSize)

とにかく新しいスレッドがありますあなたがきれいなスタックを取得するように良いアイデア。 Androidのメインスレッドは、すでにDalvikやシステムの他の部分に属している約10のエントリを持っています...

+0

私はアプリケーション全体のスタックサイズを変更するのではなく、使っています。私はTIMER TASKであり、私のアプリでは定期的な仕事のためのタイマーです。 – utengr

+0

'Timer'が使用するスレッドは変更できません。したがって、 'TimerTask'からトリガできるスタックサイズの2番目のスレッドが必要です。 – Robert

+0

ありがとうございます。私はそれを試してみましょう。 – utengr

関連する問題