Exit() 可能會使 JMP 在後台運行 100 多個 JMP 實例大家好,
當我將 JMP 的多個實例創建為調用不同文件夾的 .jsl 文件時,有時 JMP 甚至在 exit() 代碼之後仍在後台運行。 我正在使用 Windows 10。
如果我在同樣卡在 JMP 文件上的地方重新運行它,它可以正常工作並退出。
是因為 Windows 10 問題還是因為 JMP 無法一次處理 100 個或更多實例?
謝謝。
回复:Windows 7 與 Windows 10我覺得我的問題類似於這個線程。 它說問題已在 JMP 10 中得到修復。 我正在使用 JMP 13。 讓我知道你的想法。
https://community.jmp.com/t5/Discussions/JSL-in-bat-file-in-windows-scheduler/td-p/5947回复:Windows 7 與 Windows 10謝謝克雷奇的解釋。
你能解釋一下 wait() 的概念以及何時何地使用嗎? 它有什麼好處?回复:Windows 7 與 Windows 10如果我理解正確的話,您有 100 多個 JMP 實例同時運行。 我懷疑它們正在耗盡一些資源(可能是內存,或文件句柄,或...)並且 JMP 或 Windows 很難從錯誤中恢復。
我建議修改啟動 JMP 實例的代碼以限制同時運行的數量。 我不知道速度的最佳數字是多少,但我猜在典型的桌面上低於 16。
回复:Windows 7 與 Windows 10它在特定文件夾中繪製一堆 .jrn、.png 和 .txt 文件,並顯示一個 completed.txt 文件並退出。
在 process hacker 窗口中,JMP 仍然打開了幾個實例,我不得不手動關閉它。
如果我再次運行它,當實例數量較少時,它工作正常並且我沒有看到任何 JMP 卡住。
這就是為什麼我想知道當您運行多個實例時,使用 wait() 是否真的有幫助? 如果是這樣,我應該在何時何地使用 wait()? Windows 10 中其他程序與 JMP 交互的任何已知問題?
應用程序:jmp.exe
框架版本:v4.0.30319
說明:應用程序通過 System.Environment.FailFast(string message) 請求進程終止。
消息:不可恢復的系統錯誤。
堆:
在 System.Environment.FailFast(System.String)
在 System.Windows.Controls.WebBrowser.TabIntoCore(System.Windows.Input.TraversalRequest)
在 System.Windows.Controls.WebBrowser.OnLoadCompleted(System.Windows.Navigation.NavigationEventArgs)
在 MS.Internal.Controls.WebBrowserEvent.DocumentComplete(System.Object,System.Object ByRef)
在 System.RuntimeMethodHandle.InvokeMethod(System.Object、System.Object[]、System.Signature、布爾值)
在 System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
在 System.Reflection.RuntimeMethodInfo.Invoke(System.Object、System.Reflection.BindingFlags、System.Reflection.Binder、System.Object[]、System.Globalization.CultureInfo)
在 MS.Win32.UnsafeNativeMethods+IWebBrowser2.Navigate2(System.Object ByRef、System.Object ByRef、System.Object ByRef、System.Object ByRef、System.Object ByRef)
在 MS.Win32.UnsafeNativeMethods+IWebBrowser2.Navigate2(System.Object ByRef、System.Object ByRef、System.Object ByRef、System.Object ByRef、System.Object ByRef)
在 System.Windows.Controls.WebBrowser.DoNavigate(System.Uri、System.Object ByRef、System.Object ByRef、System.Object ByRef、布爾值)
在 WinHost.TipView.showCurrentTip()
在 WinHost.TipView..ctor()
在 .WinHost.newTipView()
在 WinHost.WpfApp.processPendingIdleRequests()
在 WinHost.WpfApp.doIdleTimeProcessing()
在 System.RuntimeMethodHandle.InvokeMethod(System.Object、System.Object[]、System.Signature、布爾值)
在 System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(System.Object, System.Object[], System.Object[])
在 System.Delegate.DynamicInvokeImpl(System.Object[])
在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate,System.Object,Int32)
在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object、System.Delegate、System.Object、Int32、System.Delegate)
在 System.Windows.Threading.DispatcherOperation.InvokeImpl()
在 System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object,布爾值)
在 System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext、System.Threading.ContextCallback、System.Object、布爾值)
在 System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object)
在 MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext、System.Threading.ContextCallback、System.Object)
在 System.Windows.Threading.DispatcherOperation.Invoke()
在 System.Windows.Threading.Dispatcher.ProcessQueue()
在 System.Windows.Threading.Dispatcher.WndProcHook(IntPtr、Int32、IntPtr、IntPtr、Boolean ByRef)
在 MS.Win32.HwndWrapper.WndProc(IntPtr、Int32、IntPtr、IntPtr、Boolean ByRef)
在 MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
在 System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate,System.Object,Int32)
在 System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object、System.Delegate、System.Object、Int32、System.Delegate)
在 System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority、System.TimeSpan、System.Delegate、System.Object、Int32)
在 MS.Win32.HwndSubclass.SubclassWndProc(IntPtr、Int32、IntPtr、IntPtr)
在 MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
在 MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
在 System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
在 System.Windows.Application.RunDispatcher(System.Object)
在 System.Windows.Application.RunInternal (System.Windows.Window)
在 WinHost.WpfApp.Run()
回复:Windows 7 與 Windows 10你的 JSL 是做什麼的? 您如何知道調用了退出函數但 JMP 實例仍在運行? 日誌窗口裡有什麼嗎?
回复:Windows 7 與 Windows 10嗨布賴恩,
您認為 wait() 函數會有幫助嗎? 何時何地使用該功能?
謝謝,回复:Windows 7 與 Windows 10感謝布賴恩的回复。 我有 40Gb RAM 和 Windows 10 Pro。
回复:Windows 7 與 Windows 10JMP 是基於內存的。如果同時啟動 100 個實例,則需要 100x(每個實例 RAM)。根據數據,在 64 位系統上至少需要 12 GB。佔用空間可能因操作系統而異,因此您可能在 Windows 10 上使用更多?你有多少內存?您使用的是哪個版本的 Windows 10?
謝謝,
布賴恩·科科倫
JMP開發