# JVGets呼出し中の例外でJVClose未実施となった場合の再初期化手順について

**URL:** <https://developer.jra-van.jp/t/topic/1387>\
**Category:** JV-Link（API）\
**Tags:** jvgets\
**Created:** [2026 年 11 月 7 日午前 8:01 UTC](https://developer.jra-van.jp/t/topic/1387 "2026-11-07T08:01:24Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![monimoni](https://yyz1.discourse-cdn.com/flex029/user_avatar/developer.jra-van.jp/monimoni/32/1310_2.png) [@monimoni](https://developer.jra-van.jp/u/monimoni)\
**Post date:** [2026 年 11 月 7 日午前 8:01 UTC](https://developer.jra-van.jp/t/topic/1387/1 "2026-11-07T08:01:24Z")

</div>

**件名：JVGets呼出し中の例外でJVClose未実施となった場合の再初期化手順について**

JV-Link 5.0.0（64bit）をPythonから利用しています。

JVInitとJVRTOpenはそれぞれ戻り値0でしたが、初回JVGetsの呼出し時にPython側でTypeErrorが発生し、JVCloseを呼び出さずにプロセスが終了しました。

JVGetsの戻り値は取得できておらず、JV-Link内部まで呼出しが到達したかは不明です。現在、再実行やキャッシュ削除は行っていません。

確認したいのは、次の2点です。

1. この状態から新しいプロセスでJVInitを呼び直す場合、必要な復旧手順や確認事項はありますか。

2. m\_savepath配下の既存データ保存領域を削除せずに再利用しても問題ないか、判断するための条件はありますか。

SDK同梱仕様書ではcache・dataの自動作成について確認しましたが、今回の異常終了後の再開手順については確認できませんでした。

該当する仕様や推奨手順があれば、ご教示いただけますと幸いです。

---

<div class="post-metadata">

**Author:** ![SameNoEsa](https://yyz1.discourse-cdn.com/flex029/user_avatar/developer.jra-van.jp/samenoesa/32/54_2.png) [@SameNoEsa](https://developer.jra-van.jp/u/SameNoEsa)\
**Post date:** [2026 年 11 月 7 日午後 10:17 UTC](https://developer.jra-van.jp/t/topic/1387/2 "2026-11-07T22:17:41Z")

</div>

@monimoni さん、おはようございます。

> [@monimoni](#):
>
> SDK同梱仕様書ではcache・dataの自動作成について確認しましたが、今回の異常終了後の再開手順については確認できませんでした。

多分特に何も必要が無いから何も記述されてないんだと思います。自分はあまりPythonのコードに詳しくない(書いて色々した経験はあるけど、TensorFlow試したり他の機械学習走らせたりでJV-Link関連は全くしてない)のでm(\_\_)m C#ではtry…catchとかでfinallyとか使えば異常時でもJVClose記述も可能なんですが、仮に出来なくても結局プロセスが終了して、再度JVInitからなら問題なく動くのでは?

ご自身で試さない理由は何か壊してしまうかも?って心配されての事でしょうか? JV-Linkがそんな軟な作りだったらひとつの乱暴なアプリのおかげで他のアプリが動かないとかって事で大変な事になりそうですが^^;

今の時代はあまり遭遇しないかと思いますが、その昔、まだWindowsも今程強固ではない時代にはアプリ開発してるとOSごと吹っ飛ばしたりもありましたが、今の時代、特にPythonとか利用していてそんな強烈なコードが書けるとは思いませんので、ご自身で再実行してみれば確認可能ではないでしょうか?
