+function async2()\r
+{\r
+ log();\r
+ log("ASYNC2");\r
+ var mcu=new mbedJS.Mcu("192.168.128.39",\r
+ {\r
+ onNew:function(){\r
+ log("[PASS]onNew");\r
+ mcu.getInfo(function(v){\r
+ log("[PASS]onGetInfo:"+v.version+","+v.platform+","+v.mcu.name+","+v.mcu.eth+","+v.memory.free);\r
+ var pin=new mbedJS.DigitalIn(mcu,mbedJS.PinName.P0_22,function(){\r
+ log("...");\r
+ mcu.disposeObject(pin._oid,function(v){\r
+ log("[PASS]onDisposeObject:"+v);\r
+ mcu.close();\r
+ });\r
+ });\r
+ });\r
+ },\r
+ onClose:function(){\r
+ log("[PASS]onClose");\r
+ },\r
+ onError:function(){\r
+ alert("Error");\r
+ }\r
+ });\r
+}\r
+function dispose1()\r
+{\r
+ log();\r
+ log("d1");\r
+ var mcu=new mbedJS.Mcu("192.168.128.39",\r
+ {\r
+ onNew:function(){\r
+ log("[PASS]onNew");\r
+ var pin=new mbedJS.DigitalIn(mcu,mbedJS.PinName.P0_22,function(){\r
+ pin.dispose(function(v){\r
+ log("[PASS]onDispose:"+v);\r
+ mcu.close();\r
+ });\r
+ });\r
+ },\r
+ onClose:function(){\r
+ log("[PASS]onClose");\r
+ },\r
+ onError:function(){\r
+ alert("Error");\r
+ }\r
+ });\r
+}\r
+function dispose2()\r
+{\r
+ log();\r
+ log("d1");\r
+ var mcu=new mbedJS.Mcu("192.168.128.39",\r
+ {\r
+ onNew:function(){\r
+ log("[PASS]onNew");\r
+ var pin=new mbedJS.DigitalIn(mcu,mbedJS.PinName.P0_22,{\r
+ onNew:function(){\r
+ log("[PASS]onNew:");\r
+ pin.dispose();\r
+ },\r
+ onDispose:function(v){\r
+ log("[PASS]onDispose:"+v);\r
+ mcu.close();\r
+ }\r
+ });\r
+ },\r
+ onClose:function(){\r
+ log("[PASS]onClose");\r
+ },\r
+ onError:function(){\r
+ alert("Error");\r
+ }\r
+ });\r
+}\r
+function dispose3()\r
+{\r
+ log();\r
+ log("d3");\r
+ var mcu=new mbedJS.Mcu("192.168.128.39",\r
+ {\r
+ onNew:function(){\r
+ log("[PASS]onNew");\r
+ var pin=new mbedJS.DigitalIn(mcu,mbedJS.PinName.P0_22,{\r
+ onNew:function(){\r
+ log("[PASS]onNew:");\r
+ pin.dispose();\r
+ mcu.close();\r
+ }\r
+ });\r
+ },\r
+ onClose:function(){\r
+ log("[PASS]onClose");\r
+ },\r
+ onError:function(){\r
+ alert("Error");\r
+ }\r
+ });\r
+}\r
+function dispose4()\r
+{\r
+ var g=function*(){\r
+ try{\r
+ log();\r
+ var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
+ log(2);\r
+ var v;\r
+ yield mcu.waitForNew();\r
+ var pin= new mbedJS.DigitalIn(mcu,mbedJS.PinName.P0_22,g);\r
+ yield pin.waitForNew();\r
+ v=yield pin.dispose();\r
+ log("[PASS]dispose:"+v);\r
+ yield mcu.close();\r
+ log("[PASS]close");\r
+ }catch(e){\r
+ alert(e);\r
+ mcu.shutdown();\r
+ }\r
+ }();\r
+ g.next();\r
+}\r