My Xamarin iOS App, Works great in the simulator, but when i publish to the apple store i get this error:
Guideline 2.1 - Performance - App Completeness
We were unable to review your app as it crashed on launch. We have attached detailed crash logs to help troubleshoot this issue.
Heres the error log:
{"app_name":"ProyectoAngela.Prism.iOS","timestamp":"2022-01-14 10:33:37.00 -0800","app_version":"1.3","slice_uuid":"0725ebef-24d0-3dd4-aba2-bd0283b254a8","adam_id":"1604093951","build_version":"1.3","platform":2,"bundleID":"com.mxxx.xxxx","share_with_app_devs":0,"is_first_party":0,"bug_type":"309","os_version":"iPhone OS 15.2 (19C56)","incident_id":"C23408FA-A088-4955-9454-2BD6CA8A371E","name":"ProyectoAngela.Prism.iOS"}
{
"uptime" : 2400000,
"procLaunch" : "2022-01-14 10:33:34.8287 -0800",
"procRole" : "Foreground",
"version" : 2,
"userID" : 501,
"deployVersion" : 210,
"modelCode" : "iPad7,5",
"procStartAbsTime" : 59878077029641,
"coalitionID" : 5657,
"osVersion" : {
"isEmbedded" : true,
"train" : "iPhone OS 15.2",
"releaseType" : "User",
"build" : "19C56"
},
"captureTime" : "2022-01-14 10:33:36.5764 -0800",
"incident" : "C23408FA-A088-4955-9454-2BD6CA8A371E",
"bug_type" : "309",
"pid" : 24812,
"procExitAbsTime" : 59878118842372,
"cpuType" : "ARM-64",
"procName" : "ProyectoAngela.Prism.iOS",
"procPath" : "\/private\/var\/containers\/Bundle\/Application\/3F629218-B618-43E2-A456-6AF0F4B6132B\/ProyectoAngela.Prism.iOS.app\/ProyectoAngela.Prism.iOS",
"bundleInfo" : {"CFBundleShortVersionString":"1.3","CFBundleVersion":"1.3","CFBundleIdentifier":"com.mxxx.xxxx","DTAppStoreToolsBuild":"13C90b"},
"storeInfo" : {"itemID":"1604093951","deviceIdentifierForVendor":"F13E8B85-5D9C-4C8E-885D-4550BE2D0EB1","thirdParty":true,"softwareVersionExternalIdentifier":"43806246"},
"parentProc" : "launchd",
"parentPid" : 1,
"coalitionName" : "com.mxxx.xxxx",
"crashReporterKey" : "36c14055bb17c6d0db3f456869338332b769d45e",
"isCorpse" : 1,
"exception" : {"codes":"0x0000000000000000, 0x0000000000000000","rawCodes":[0,0],"type":"EXC_CRASH","signal":"SIGABRT"},
"ktriageinfo" : "VM - Fault hit memory shortage\nVM - Fault hit memory shortage\nVM - Fault hit memory shortage\nVM - Fault hit memory shortage\n",
"asi" : {"libsystem_c.dylib":["abort() called"]},
"lastExceptionBacktrace" : [{"imageOffset":597308,"symbol":"__exceptionPreprocess","symbolLocation":216,"imageIndex":4},{"imageOffset":83624,"symbol":"objc_exception_throw","symbolLocation":56,"imageIndex":5},{"imageOffset":1190300,"symbol":"_userInfoForFileAndLine","symbolLocation":0,"imageIndex":12},{"imageOffset":5034496,"symbol":"-[UIApplication _runWithMainScene:transitionContext:completion:]","symbolLocation":2028,"imageIndex":10},{"imageOffset":3381572,"symbol":"-[_UISceneLifecycleMultiplexer completeApplicationLaunchWithFBSScene:transitionContext:]","symbolLocation":148,"imageIndex":10},{"imageOffset":1694148,"symbol":"_UIScenePerformActionsWithLifecycleActionMask","symbolLocation":96,"imageIndex":10},{"imageOffset":2890720,"symbol":"__101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke","symbolLocation":196,"imageIndex":10},{"imageOffset":4031172,"symbol":"-[_UISceneLifecycleMultiplexer _performBlock:withApplicationOfDeactivationReasons:fromReasons:]","symbolLocation":240,"imageIndex":10},{"imageOffset":6307680,"symbol":"-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]","symbolLocation":732,"imageIndex":10},{"imageOffset":5847968,"symbol":"-[_UISceneLifecycleMultiplexer uiScene:transitionedFromState:withTransitionContext:]","symbolLocation":336,"imageIndex":10},{"imageOffset":1697964,"symbol":"__186-[_UIWindowSceneFBSSceneTransitionContextDrivenLifecycleSettingsDiffAction _performActionsForUIScene:withUpdatedFBSScene:settingsDiff:fromSettings:transitionContext:lifecycleActionType:]_block_invoke","symbolLocation":188,"imageIndex":10},{"imageOffset":2468940,"symbol":"+[BSAnimationSettings(UIKit) tryAnimatingWithSettings:actions:completion:]","symbolLocation":812,"imageIndex":10},{"imageOffset":1705532,"symbol":"_UISceneSettingsDiffActionPerformChangesWithTransitionContext","symbolLocation":248,"imageIndex":10},{"imageOffset":2645692,"symbol":"-[_UIWindowSceneFBSSceneTransitionContextDrivenLifecycleSettingsDiffAction _performActionsForUIScene:withUpdatedFBSScene:settingsDiff:fromSettings:transitionContext:lifecycleActionType:]","symbolLocation":356,"imageIndex":10},{"imageOffset":7212472,"symbol":"__64-[UIScene scene:didUpdateWithDiff:transitionContext:completion:]_block_invoke.576","symbolLocation":772,"imageIndex":10},{"imageOffset":1894672,"symbol":"-[UIScene _emitSceneSettingsUpdateResponseForCompletion:afterSceneUpdateWork:]","symbolLocation":248,"imageIndex":10},{"imageOffset":2164592,"symbol":"-[UIScene scene:didUpdateWithDiff:transitionContext:completion:]","symbolLocation":264,"imageIndex":10},{"imageOffset":3400924,"symbol":"-[UIApplication workspace:didCreateScene:withTransitionContext:completion:]","symbolLocation":548,"imageIndex":10},{"imageOffset":2638552,"symbol":"-[UIApplicationSceneClientAgent scene:didInitializeWithEvent:completion:]","symbolLocation":360,"imageIndex":10},{"imageOffset":158380,"symbol":"-[FBSScene _callOutQueue_agent_didCreateWithTransitionContext:completion:]","symbolLocation":412,"imageIndex":8},{"imageOffset":299212,"symbol":"__94-[FBSWorkspaceScenesClient createWithSceneID:groupID:parameters:transitionContext:completion:]_block_invoke.180","symbolLocation":100,"imageIndex":8},{"imageOffset":37104,"symbol":"-[FBSWorkspace _calloutQueue_executeCalloutFromSource:withBlock:]","symbolLocation":232,"imageIndex":8},{"imageOffset":42232,"symbol":"__94-[FBSWorkspaceScenesClient createWithSceneID:groupID:parameters:transitionContext:completion:]_block_invoke","symbolLocation":312,"imageIndex":8},{"imageOffset":410024,"symbol":"_dispatch_client_callout","symbolLocation":16,"imageIndex":7},{"imageOffset":27344,"symbol":"_dispatch_block_invoke_direct$VARIANT$mp","symbolLocation":220,"imageIndex":7},{"imageOffset":42960,"symbol":"__FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__","symbolLocation":40,"imageIndex":8},{"imageOffset":40156,"symbol":"-[FBSSerialQueue _targetQueue_performNextIfPossible]","symbolLocation":176,"imageIndex":8},{"imageOffset":56900,"symbol":"-[FBSSerialQueue _performNextFromRunLoopSource]","symbolLocation":24,"imageIndex":8},{"imageOffset":729776,"symbol":"__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__","symbolLocation":24,"imageIndex":4},{"imageOffset":795352,"symbol":"__CFRunLoopDoSource0","symbolLocation":204,"imageIndex":4},{"imageOffset":22136,"symbol":"__CFRunLoopDoSources0","symbolLocation":256,"imageIndex":4},{"imageOffset":43688,"symbol":"__CFRunLoopRun","symbolLocation":768,"imageIndex":4},{"imageOffset":122396,"symbol":"CFRunLoopRunSpecific","symbolLocation":572,"imageIndex":4},{"imageOffset":6560,"symbol":"GSEventRunModal","symbolLocation":160,"imageIndex":9},{"imageOffset":5162496,"symbol":"-[UIApplication _run]","symbolLocation":1080,"imageIndex":10},{"imageOffset":2628360,"symbol":"UIApplicationMain","symbolLocation":2028,"imageIndex":10},{"imageOffset":6357064,"imageIndex":3},{"imageOffset":5659504,"imageIndex":3},{"imageOffset":735588,"imageIndex":3},{"imageOffset":4497056,"imageIndex":3},{"imageOffset":27583448,"imageIndex":3},{"imageOffset":28347188,"imageIndex":3},{"imageOffset":28372456,"imageIndex":3},{"imageOffset":27445224,"imageIndex":3},{"imageOffset":29268332,"imageIndex":3},{"imageOffset":735424,"imageIndex":3},{"imageOffset":98896,"symbol":"start","symbolLocation":444,"imageIndex":11}],
"faultingThread" : 0,
"threads" : [{"triggered":true,"id":7001002,"threadState":{"x":[{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":10000000},{"value":6656},{"value":0},{"value":4377052544,"symbolLocation":0,"symbol":"_main_thread"},{"value":9444832902787961409},{"value":1000},{"value":0},{"value":4374720048},{"value":4396135443},{"value":96},{"value":2147483648},{"value":328},{"value":35220},{"value":0},{"value":6},{"value":259},{"value":4377052768,"symbolLocation":224,"symbol":"_main_thread"},{"value":0},{"value":4387366400},{"value":4396135440},{"value":6127452192},{"value":1},{"value":4371711952},{"value":16777215}],"flavor":"ARM_THREAD_STATE64","lr":{"value":8063379492},"cpsr":{"value":1073741824},"fp":{"value":6127448544},"sp":{"value":6127448512},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":7524698600,"matchesCrashFrame":1},"far":{"value":0}},"name":"tid_103","queue":"com.apple.main-thread","frames":[{"imageOffset":27112,"symbol":"__pthread_kill","symbolLocation":8,"imageIndex":0},{"imageOffset":67620,"symbol":"pthread_kill","symbolLocation":208,"imageIndex":1},{"imageOffset":471172,"symbol":"__abort","symbolLocation":124,"imageIndex":2},{"imageOffset":127168,"symbol":"abort","symbolLocation":132,"imageIndex":2},{"imageOffset":29233400,"imageIndex":3},{"imageOffset":27948312,"imageIndex":3},{"imageOffset":27510416,"imageIndex":3},{"imageOffset":27504740,"imageIndex":3},{"imageOffset":27463136,"imageIndex":3},{"imageOffset":4929516,"imageIndex":3},{"imageOffset":28395608,"imageIndex":3},{"imageOffset":29232364,"imageIndex":3},{"imageOffset":27507688,"imageIndex":3},{"imageOffset":27504740,"imageIndex":3},{"imageOffset":27463136,"imageIndex":3},{"imageOffset":4929516,"imageIndex":3},{"imageOffset":5997920,"imageIndex":3},{"imageOffset":5980964,"imageIndex":3},{"imageOffset":6449104,"imageIndex":3},{"imageOffset":1096596,"symbol":"__handleUncaughtException","symbolLocation":628,"imageIndex":4},{"imageOffset":106508,"symbol":"_objc_terminate()","symbolLocation":112,"imageIndex":5},{"imageOffset":74444,"symbol":"std::__terminate(void (*)())","symbolLocation":16,"imageIndex":6},{"imageOffset":74356,"symbol":"std::terminate()","symbolLocation":60,"imageIndex":6},{"imageOffset":410044,"symbol":"_dispatch_client_callout","symbolLocation":36,"imageIndex":7},{"imageOffset":27344,"symbol":"_dispatch_block_invoke_direct$VARIANT$mp","symbolLocation":220,"imageIndex":7},{"imageOffset":42960,"symbol":"__FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__","symbolLocation":40,"imageIndex":8},{"imageOffset":40156,"symbol":"-[FBSSerialQueue _targetQueue_performNextIfPossible]","symbolLocation":176,"imageIndex":8},{"imageOffset":56900,"symbol":"-[FBSSerialQueue _performNextFromRunLoopSource]","symbolLocation":24,"imageIndex":8},{"imageOffset":729776,"symbol":"__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__","symbolLocation":24,"imageIndex":4},{"imageOffset":795352,"symbol":"__CFRunLoopDoSource0","symbolLocation":204,"imageIndex":4},{"imageOffset":22136,"symbol":"__CFRunLoopDoSources0","symbolLocation":256,"imageIndex":4},{"imageOffset":43688,"symbol":"__CFRunLoopRun","symbolLocation":768,"imageIndex":4},{"imageOffset":122396,"symbol":"CFRunLoopRunSpecific","symbolLocation":572,"imageIndex":4},{"imageOffset":6560,"symbol":"GSEventRunModal","symbolLocation":160,"imageIndex":9},{"imageOffset":5162496,"symbol":"-[UIApplication _run]","symbolLocation":1080,"imageIndex":10},{"imageOffset":2628360,"symbol":"UIApplicationMain","symbolLocation":2028,"imageIndex":10},{"imageOffset":6357064,"imageIndex":3},{"imageOffset":5659504,"imageIndex":3},{"imageOffset":735588,"imageIndex":3},{"imageOffset":4497056,"imageIndex":3},{"imageOffset":27583448,"imageIndex":3},{"imageOffset":28347188,"imageIndex":3},{"imageOffset":28372456,"imageIndex":3},{"imageOffset":27445224,"imageIndex":3},{"imageOffset":29268332,"imageIndex":3},{"imageOffset":735424,"imageIndex":3},{"imageOffset":98896,"symbol":"start","symbolLocation":444,"imageIndex":11}]},{"id":7001006,"frames":[{"imageOffset":18920,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":1}]},{"id":7001037,"name":"SGen worker","frames":[{"imageOffset":5360,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":0},{"imageOffset":52220,"symbol":"_pthread_cond_wait$VARIANT$mp","symbolLocation":1216,"imageIndex":1},{"imageOffset":29015296,"imageIndex":3},{"imageOffset":25508,"symbol":"_pthread_start","symbolLocation":116,"imageIndex":1},{"imageOffset":18940,"symbol":"thread_start","symbolLocation":8,"imageIndex":1}]},{"id":7001043,"name":"Finalizer","frames":[{"imageOffset":2892,"symbol":"semaphore_wait_trap","symbolLocation":8,"imageIndex":0},{"imageOffset":27961632,"imageIndex":3},{"imageOffset":28665400,"imageIndex":3},{"imageOffset":28665020,"imageIndex":3},{"imageOffset":25508,"symbol":"_pthread_start","symbolLocation":116,"imageIndex":1},{"imageOffset":18940,"symbol":"thread_start","symbolLocation":8,"imageIndex":1}]},{"id":7001044,"frames":[{"imageOffset":18920,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":1}]},{"id":7001045,"frames":[{"imageOffset":18920,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":1}]},{"id":7001046,"name":"com.apple.uikit.eventfetch-thread","frames":[{"imageOffset":2832,"symbol":"mach_msg_trap","symbolLocation":8,"imageIndex":0},{"imageOffset":4404,"symbol":"mach_msg","symbolLocation":72,"imageIndex":0},{"imageOffset":27488,"symbol":"__CFRunLoopServiceMachPort","symbolLocation":368,"imageIndex":4},{"imageOffset":44104,"symbol":"__CFRunLoopRun","symbolLocation":1184,"imageIndex":4},{"imageOffset":122396,"symbol":"CFRunLoopRunSpecific","symbolLocation":572,"imageIndex":4},{"imageOffset":95180,"symbol":"-[NSRunLoop(NSRunLoop) runMode:beforeDate:]","symbolLocation":232,"imageIndex":12},{"imageOffset":351292,"symbol":"-[NSRunLoop(NSRunLoop) runUntilDate:]","symbolLocation":88,"imageIndex":12},{"imageOffset":4629320,"symbol":"-[UIEventFetcher threadMain]","symbolLocation":512,"imageIndex":10},{"imageOffset":407724,"symbol":"__NSThread__start__","symbolLocation":792,"imageIndex":12},{"imageOffset":25508,"symbol":"_pthread_start","symbolLocation":116,"imageIndex":1},{"imageOffset":18940,"symbol":"thread_start","symbolLocation":8,"imageIndex":1}]},{"id":7001047,"queue":"com.apple.UIKit.KeyboardManagement","frames":[{"imageOffset":5876,"symbol":"__ulock_wait","symbolLocation":8,"imageIndex":0},{"imageOffset":18172,"symbol":"_dlock_wait","symbolLocation":52,"imageIndex":7},{"imageOffset":17640,"symbol":"_dispatch_thread_event_wait_slow$VARIANT$mp","symbolLocation":52,"imageIndex":7},{"imageOffset":70800,"symbol":"__DISPATCH_WAIT_FOR_QUEUE__","symbolLocation":320,"imageIndex":7},{"imageOffset":69812,"symbol":"_dispatch_sync_f_slow","symbolLocation":136,"imageIndex":7},{"imageOffset":3490008,"symbol":"__37-[_UIRemoteKeyboards startConnection]_block_invoke_3","symbolLocation":112,"imageIndex":10},{"imageOffset":133488,"symbol":"__invoking___","symbolLocation":144,"imageIndex":4},{"imageOffset":247368,"symbol":"-[NSInvocation invoke]","symbolLocation":300,"imageIndex":4},{"imageOffset":206832,"symbol":"__NSXPCCONNECTION_IS_CALLING_OUT_TO_REPLY_BLOCK__","symbolLocation":20,"imageIndex":12},{"imageOffset":335816,"symbol":"-[NSXPCConnection _decodeAndInvokeReplyBlockWithEvent:sequence:replyInfo:]","symbolLocation":568,"imageIndex":12},{"imageOffset":190012,"symbol":"__88-[NSXPCConnection _sendInvocation:orArguments:count:methodSignature:selector:withProxy:]_block_invoke_3","symbolLocation":208,"imageIndex":12},{"imageOffset":101576,"symbol":"_xpc_connection_reply_callout","symbolLocation":60,"imageIndex":13},{"imageOffset":53252,"symbol":"_xpc_connection_call_reply_async","symbolLocation":76,"imageIndex":13},{"imageOffset":410144,"symbol":"_dispatch_client_callout3","symbolLocation":16,"imageIndex":7},{"imageOffset":118880,"symbol":"_dispatch_mach_msg_async_reply_invoke$VARIANT$mp","symbolLocation":352,"imageIndex":7},{"imageOffset":40884,"symbol":"_dispatch_lane_serial_drain$VARIANT$mp","symbolLocation":340,"imageIndex":7},{"imageOffset":43972,"symbol":"_dispatch_lane_invoke$VARIANT$mp","symbolLocation":456,"imageIndex":7},{"imageOffset":83808,"symbol":"_dispatch_workloop_worker_thread","symbolLocation":632,"imageIndex":7},{"imageOffset":20100,"symbol":"_pthread_wqthread","symbolLocation":284,"imageIndex":1},{"imageOffset":18928,"symbol":"start_wqthread","symbolLocation":8,"imageIndex":1}]},{"id":7001049,"name":"tid_5703","frames":[{"imageOffset":5360,"symbol":"__psynch_cvwait","symbolLocation":8,"imageIndex":0},{"imageOffset":52220,"symbol":"_pthread_cond_wait$VARIANT$mp","symbolLocation":1216,"imageIndex":1},{"imageOffset":29078140,"imageIndex":3},{"imageOffset":29114340,"imageIndex":3},{"imageOffset":28616676,"imageIndex":3},{"imageOffset":28665400,"imageIndex":3},{"imageOffset":28665020,"imageIndex":3},{"imageOffset":25508,"symbol":"_pthread_start","symbolLocation":116,"imageIndex":1},{"imageOffset":18940,"symbol":"thread_start","symbolLocation":8,"imageIndex":1}]},{"id":7001050,"name":"Thread Pool Worker","frames":[{"imageOffset":2916,"symbol":"semaphore_timedwait_trap","symbolLocation":8,"imageIndex":0},{"imageOffset":28618908,"imageIndex":3},{"imageOffset":28665400,"imageIndex":3},{"imageOffset":28665020,"imageIndex":3},{"imageOffset":25508,"symbol":"_pthread_start","symbolLocation":116,"imageIndex":1},{"imageOffset":18940,"symbol":"thread_start","symbolLocation":8,"imageIndex":1}]},{"id":7001051,"name":"Thread Pool Worker","frames":[{"imageOffset":2916,"symbol":"semaphore_timedwait_trap","symbolLocation":8,"imageIndex":0},{"imageOffset":28618908,"imageIndex":3},{"imageOffset":28665400,"imageIndex":3},{"imageOffset":28665020,"imageIndex":3},{"imageOffset":25508,"symbol":"_pthread_start","symbolLocation":116,"imageIndex":1},
I think you should always test your app on a physical device before submitting your app to the App store.
By doing so you can correct bugs or missing permissions early.
have an application developed in Erlang and to run this application I need to do: ./build.sh && ./deploy.sh && ./erl_start.sh
I want to make a function that will do the same thing as Ctrl + C and run ./build.sh && ./deploy.sh && ./erl_start.sh
meaning stop the application and run again this application
I try with this function :
verify(Val)->
if Val =:=40 ->
Pid = self(),
io:format("~w~n",[Pid]),
spawn(fun() -> exit(Pid, kill) end),
LsOut = os:cmd("./build.sh && ./deploy.sh && ./erl_start.sh");
true -> ok
end.
and when I test this function I have this error :
1> model:verify(40).
<0.144.0>
** exception exit: killed
I test this command :
1> [io:format("~p : ~p~n",[Pid,erlang:process_info(Pid,current_function)]) || Pid <- processes()].
<0.0.0> : {current_function,{init,loop,1}}
<0.3.0> : {current_function,{erl_prim_loader,loop,3}}
<0.5.0> : {current_function,{gen_event,fetch_msg,5}}
<0.6.0> : {current_function,{gen_server,loop,6}}
<0.8.0> : {current_function,{application_master,main_loop,2}}
<0.9.0> : {current_function,{application_master,loop_it,4}}
<0.10.0> : {current_function,{gen_server,loop,6}}
<0.11.0> : {current_function,{gen_server,loop,6}}
<0.12.0> : {current_function,{gen_server,loop,6}}
<0.13.0> : {current_function,{global,loop_the_locker,1}}
<0.14.0> : {current_function,{global,collect_deletions,2}}
<0.15.0> : {current_function,{global,loop_the_registrar,0}}
<0.16.0> : {current_function,{gen_server,loop,6}}
<0.18.0> : {current_function,{gen_server,loop,6}}
<0.19.0> : {current_function,{gen_server,loop,6}}
<0.20.0> : {current_function,{code_server,loop,1}}
<0.21.0> : {current_function,{gen_server,loop,6}}
<0.22.0> : {current_function,{standard_error,server_loop,1}}
<0.23.0> : {current_function,{gen_server,loop,6}}
<0.24.0> : {current_function,{user_drv,server_loop,5}}
<0.25.0> : {current_function,{group,server_loop,3}}
<0.26.0> : {current_function,{group,server_loop,3}}
<0.27.0> : {current_function,{shell,shell_rep,4}}
<0.28.0> : {current_function,{gen_server,loop,6}}
<0.29.0> : {current_function,{gen_server,loop,6}}
<0.36.0> : {current_function,{application_master,main_loop,2}}
<0.37.0> : {current_function,{application_master,loop_it,4}}
<0.38.0> : {current_function,{gen_server,loop,6}}
<0.39.0> : {current_function,{gen_event,fetch_msg,5}}
<0.40.0> : {current_function,{gen_server,loop,6}}
<0.41.0> : {current_function,{gen_server,loop,6}}
<0.44.0> : {current_function,{gen_server,loop,6}}
<0.45.0> : {current_function,{mnesia_locker,loop,1}}
<0.46.0> : {current_function,{gen_server,loop,6}}
<0.47.0> : {current_function,{mnesia_tm,doit_loop,1}}
<0.48.0> : {current_function,{gen_server,loop,6}}
<0.49.0> : {current_function,{gen_server,loop,6}}
<0.53.0> : {current_function,{gen_server,loop,6}}
<0.54.0> : {current_function,{gen_server,loop,6}}
<0.63.0> : {current_function,{disk_log,loop,1}}
<0.65.0> : {current_function,{gen_server,loop,6}}
<0.66.0> : {current_function,{gen_server,loop,6}}
<0.67.0> : {current_function,{gen_server,loop,6}}
<0.68.0> : {current_function,{gen_server,loop,6}}
<0.69.0> : {current_function,{mnesia_late_loader,loop,1}}
<0.105.0> : {current_function,{application_master,main_loop,2}}
<0.106.0> : {current_function,{application_master,loop_it,4}}
<0.107.0> : {current_function,{gen_server,loop,6}}
<0.108.0> : {current_function,{gen_server,loop,6}}
<0.109.0> : {current_function,{gen_server,loop,6}}
<0.110.0> : {current_function,{gen_server,loop,6}}
<0.111.0> : {current_function,{gen_server,loop,6}}
<0.112.0> : {current_function,{gen_server,loop,6}}
<0.113.0> : {current_function,{gen_server,loop,6}}
<0.114.0> : {current_function,{gen_server,loop,6}}
<0.115.0> : {current_function,{gen_server,loop,6}}
<0.117.0> : {current_function,{gen_server,loop,6}}
<0.118.0> : {current_function,{gen_server,loop,6}}
<0.119.0> : {current_function,{gen_server,loop,6}}
<0.120.0> : {current_function,{gen_server,loop,6}}
<0.121.0> : {current_function,{prim_inet,accept0,2}}
<0.123.0> : {current_function,{gen_server,loop,6}}
<0.124.0> : {current_function,{gen_server,loop,6}}
<0.125.0> : {current_function,{gen_server,loop,6}}
<0.126.0> : {current_function,{gen_server,loop,6}}
<0.127.0> : {current_function,{prim_inet,accept0,2}}
<0.129.0> : {current_function,{gen_server,loop,6}}
<0.130.0> : {current_function,{gen_server,loop,6}}
<0.131.0> : {current_function,{gen_server,loop,6}}
<0.132.0> : {current_function,{gen_server,loop,6}}
<0.133.0> : {current_function,{prim_inet,accept0,2}}
<0.135.0> : {current_function,{gen_server,loop,6}}
<0.136.0> : {current_function,{gen_server,loop,6}}
<0.137.0> : {current_function,{gen_server,loop,6}}
<0.138.0> : {current_function,{gen_server,loop,6}}
<0.139.0> : {current_function,{prim_inet,accept0,2}}
<0.140.0> : {current_function,{gen_server,loop,6}}
<0.143.0> : {current_function,{os,start_port_srv_loop,2}}
<0.144.0> : {current_function,{erl_eval,do_apply,5}}
[ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,
ok,ok,ok,ok,ok,ok,ok,ok,ok,ok|...]
and also I test this command :
1> [io:format("~p : ~p~n",[Pid,erlang:process_info(Pid,initial_call)]) || Pid <- processes()].
<0.0.0> : {initial_call,{otp_ring0,start,2}}
<0.3.0> : {initial_call,{erlang,apply,2}}
<0.5.0> : {initial_call,{proc_lib,init_p,5}}
<0.6.0> : {initial_call,{erlang,apply,2}}
<0.8.0> : {initial_call,{proc_lib,init_p,5}}
<0.9.0> : {initial_call,{application_master,start_it,4}}
<0.10.0> : {initial_call,{proc_lib,init_p,5}}
<0.11.0> : {initial_call,{proc_lib,init_p,5}}
<0.12.0> : {initial_call,{proc_lib,init_p,5}}
<0.13.0> : {initial_call,{erlang,apply,2}}
<0.14.0> : {initial_call,{erlang,apply,2}}
<0.15.0> : {initial_call,{erlang,apply,2}}
<0.16.0> : {initial_call,{proc_lib,init_p,5}}
<0.18.0> : {initial_call,{proc_lib,init_p,5}}
<0.19.0> : {initial_call,{proc_lib,init_p,5}}
<0.20.0> : {initial_call,{erlang,apply,2}}
<0.21.0> : {initial_call,{proc_lib,init_p,5}}
<0.22.0> : {initial_call,{standard_error,server,2}}
<0.23.0> : {initial_call,{proc_lib,init_p,5}}
<0.24.0> : {initial_call,{user_drv,server,2}}
<0.25.0> : {initial_call,{group,server,3}}
<0.26.0> : {initial_call,{group,server,3}}
<0.27.0> : {initial_call,{erlang,apply,2}}
<0.28.0> : {initial_call,{proc_lib,init_p,5}}
<0.29.0> : {initial_call,{proc_lib,init_p,5}}
<0.36.0> : {initial_call,{proc_lib,init_p,5}}
<0.37.0> : {initial_call,{application_master,start_it,4}}
<0.38.0> : {initial_call,{proc_lib,init_p,5}}
<0.39.0> : {initial_call,{proc_lib,init_p,5}}
<0.40.0> : {initial_call,{proc_lib,init_p,5}}
<0.41.0> : {initial_call,{proc_lib,init_p,5}}
<0.44.0> : {initial_call,{proc_lib,init_p,5}}
<0.45.0> : {initial_call,{proc_lib,init_p,5}}
<0.46.0> : {initial_call,{proc_lib,init_p,5}}
<0.47.0> : {initial_call,{proc_lib,init_p,5}}
<0.48.0> : {initial_call,{proc_lib,init_p,5}}
<0.49.0> : {initial_call,{proc_lib,init_p,5}}
<0.53.0> : {initial_call,{proc_lib,init_p,5}}
<0.54.0> : {initial_call,{proc_lib,init_p,5}}
<0.63.0> : {initial_call,{proc_lib,init_p,5}}
<0.65.0> : {initial_call,{proc_lib,init_p,5}}
<0.66.0> : {initial_call,{proc_lib,init_p,5}}
<0.67.0> : {initial_call,{proc_lib,init_p,5}}
<0.68.0> : {initial_call,{proc_lib,init_p,5}}
<0.69.0> : {initial_call,{proc_lib,init_p,5}}
<0.105.0> : {initial_call,{proc_lib,init_p,5}}
<0.106.0> : {initial_call,{application_master,start_it,4}}
<0.107.0> : {initial_call,{proc_lib,init_p,5}}
<0.108.0> : {initial_call,{proc_lib,init_p,5}}
<0.109.0> : {initial_call,{proc_lib,init_p,5}}
<0.110.0> : {initial_call,{proc_lib,init_p,5}}
<0.111.0> : {initial_call,{proc_lib,init_p,5}}
<0.112.0> : {initial_call,{proc_lib,init_p,5}}
<0.113.0> : {initial_call,{proc_lib,init_p,5}}
<0.114.0> : {initial_call,{proc_lib,init_p,5}}
<0.115.0> : {initial_call,{proc_lib,init_p,5}}
<0.117.0> : {initial_call,{proc_lib,init_p,5}}
<0.118.0> : {initial_call,{proc_lib,init_p,5}}
<0.119.0> : {initial_call,{proc_lib,init_p,5}}
<0.120.0> : {initial_call,{proc_lib,init_p,5}}
<0.121.0> : {initial_call,{proc_lib,init_p,5}}
<0.123.0> : {initial_call,{proc_lib,init_p,5}}
<0.124.0> : {initial_call,{proc_lib,init_p,5}}
<0.125.0> : {initial_call,{proc_lib,init_p,5}}
<0.126.0> : {initial_call,{proc_lib,init_p,5}}
<0.127.0> : {initial_call,{proc_lib,init_p,5}}
<0.129.0> : {initial_call,{proc_lib,init_p,5}}
<0.130.0> : {initial_call,{proc_lib,init_p,5}}
<0.131.0> : {initial_call,{proc_lib,init_p,5}}
<0.132.0> : {initial_call,{proc_lib,init_p,5}}
<0.133.0> : {initial_call,{proc_lib,init_p,5}}
<0.135.0> : {initial_call,{proc_lib,init_p,5}}
<0.136.0> : {initial_call,{proc_lib,init_p,5}}
<0.137.0> : {initial_call,{proc_lib,init_p,5}}
<0.138.0> : {initial_call,{proc_lib,init_p,5}}
<0.139.0> : {initial_call,{proc_lib,init_p,5}}
<0.140.0> : {initial_call,{proc_lib,init_p,5}}
<0.143.0> : {initial_call,{erlang,apply,2}}
<0.144.0> : {initial_call,{erlang,apply,2}}
[ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,ok,
ok,ok,ok,ok,ok,ok,ok,ok,ok,ok|...]
I try with this function :
verify(Val) ->
erlang:halt();
verify(_) ->
% do nothing
ok.
and when I test I have this result :
1> model:verify(40).
root#ubuntu:/home/afif/Desktop/ttest/erlang#
it only exit the VM
but as I already said I want to stop the application and run again this application
and for this I try with :
verify(Val) ->
erlang:halt(),
LsOut = os:cmd("./build.sh && ./deploy.sh && ./erl_start.sh");
verify(_) ->
% do nothing
ok.
but I have the same result like the previous code
what I've done is half of work
remains how to run the program again
If you only want to exit the VM in order to restart, you can use the function erlang:halt() or erlang:halt(Status). From the documentation:
halt()
Halts the Erlang runtime system and indicates normal exit to the
calling environment. Has no return value.
halt().
os_prompt%
halt(Status)
Types:
Status = integer() >= 0 | string()
Status must be a non-negative integer, or a string. Halts the Erlang
runtime system. Has no return value. If Status is an integer, it is
returned as an exit status of Erlang to the calling environment. If
Status is a string, produces an Erlang crash dump with String as
slogan, and then exits with a non-zero status code.
Note that on many platforms, only the status codes 0-255 are supported
by the operating system.
so your code could be:
verify(40) ->
erlang:halt();
verify(_) ->
% do nothing
ok.
But as I told you in your previous question, I don't think that you are looking in the good direction.