From a609a6efee3c737f432a20d10834bf0b47fa1bd9 Mon Sep 17 00:00:00 2001 From: iwasaki Date: Fri, 11 Dec 2015 23:05:38 +0900 Subject: [PATCH] execute threadworker by fei --- vem/.feicontrol.rb.un~ | Bin 48755 -> 52429 bytes vem/feicontrol.rb | 5 +- vem/feicontrol.rb~ | 14 ++-- vemserver/.request.rb.un~ | Bin 0 -> 14049 bytes vemserver/.vemapi2.rb.un~ | Bin 6942 -> 7833 bytes vemserver/.workerThread.rb.un~ | Bin 0 -> 3643 bytes vemserver/config.ru | 6 -- vemserver/config.ru~ | 6 -- vemserver/request.rb | 45 +++++++------ vemserver/request.rb~ | 30 +++++++++ vemserver/thread.rb | 11 ---- vemserver/thread.rb~ | 8 --- vemserver/vemapi2.rb~ | 146 ++++++++--------------------------------- vemserver/workerThread.rb | 3 + vemserver/workerThread.rb~ | 22 +++++++ 15 files changed, 119 insertions(+), 177 deletions(-) create mode 100644 vemserver/.request.rb.un~ create mode 100644 vemserver/.workerThread.rb.un~ delete mode 100644 vemserver/config.ru delete mode 100644 vemserver/config.ru~ create mode 100644 vemserver/request.rb~ delete mode 100644 vemserver/thread.rb delete mode 100644 vemserver/thread.rb~ create mode 100644 vemserver/workerThread.rb~ diff --git a/vem/.feicontrol.rb.un~ b/vem/.feicontrol.rb.un~ index fc2a49db2d90fb00500f17e313537514e8fd3471..b5dd09273ab4e70667107d2e20a8262b1d63860a 100644 GIT binary patch delta 693 zcmZ8fO-lk%6rHEF7>g*%P|&nb!u%*rT87a!s70-UkTi3K5?TilSb-!2Z(;UHL5m;) zd$?=UDk6e{+0-`r1r==yy65STbm7dKx%ZxP&wFp)zby|%YkVfXbUeL0o_SL&UqAOB z6VEyC>p}T8*&VwG&o=o2tLk;St6}tZyXj0(lr4f8E_z`Ey_&#kLYdKw(>hc=rQBMH zC4}wjo;l|!k*v03Nf7)5x43CdF|TICB*(3MIw(6p2okacNV$11?{ccq^|?p-0(XI6 zMpC?-WmubL=u$(eXh1#4I}dy9n42=2X$99Wrc|9-H6z3Cj$AyD?`c7Lv8F90p6WAf zOfy!bY{#E$h`Kfiux3$BTNsfhm;o(pqET+qr5QW5_OQhO0Xi1$%X@wF@;3s+O_Tst zrDvrEN{F|gdz_HhkgotMZG%WbVWm#ur_e75MRJ3tA@|1aB KJ|v#Sp6wU9<#$d1 delta 128 zcmX>*llk)>CbO{2-1(t-F8NOxm?8sHjI4zoo?I#VYEuTI`s|ge>K+Fim$v_$eKr{?9gr(*_c?rk&$8Z!;PmI KH|rmo#{~dBfg_aw diff --git a/vem/feicontrol.rb b/vem/feicontrol.rb index 43cf9dc..ff9a7c9 100644 --- a/vem/feicontrol.rb +++ b/vem/feicontrol.rb @@ -41,12 +41,15 @@ class FEIControl < VEM def get_params puts "FEI get params" - @@tem = TEMObject.instance + @@tem = TEMObject.instance + + puts @@tem.Stage @@params["x"] = @@tem.Stage.Position.X @@params["y"] = @@tem.Stage.Position.Y @@params["z"] = @@tem.Stage.Position.Z @@params["a"] = @@tem.Stage.Position.A + return @@params end diff --git a/vem/feicontrol.rb~ b/vem/feicontrol.rb~ index bb9cdfc..77e81ea 100644 --- a/vem/feicontrol.rb~ +++ b/vem/feicontrol.rb~ @@ -41,14 +41,14 @@ class FEIControl < VEM def get_params puts "FEI get params" - @@tem = TEMObject.instance - puts @@tem.Stage - + @@tem = TEMObject.instance + + puts @@tem -# @@params["x"] = @@tem.Stage.Position.X -# @@params["y"] = @@tem.Stage.Position.Y -# @@params["z"] = @@tem.Stage.Position.Z -# @@params["a"] = @@tem.Stage.Position.A + @@params["x"] = @@tem.Stage.Position.X + @@params["y"] = @@tem.Stage.Position.Y + @@params["z"] = @@tem.Stage.Position.Z + @@params["a"] = @@tem.Stage.Position.A return @@params end diff --git a/vemserver/.request.rb.un~ b/vemserver/.request.rb.un~ new file mode 100644 index 0000000000000000000000000000000000000000..1b24bb224b9d274496a84415aa9a21d5c5f27dfd GIT binary patch literal 14049 zcmeI2J!~9R5XaAszb=kr`y40!NWyw0WLvUqAw-2hMj|Cm1Sdt7Wi98mxx;s7?$*Ji zqoJjwL_(s0E)6XWLKH{{1ObW&1PDYyMGzg#f8LwDxp(JN3cv1+^t|@Ix4Yx{y_tFQ zcFWcJ`>!-!Z2ndle(IN7|E#P&`RVlC`}?~OmhNx7Tl(zb=Pw_8T>AOf^{0P)r%))| zq;{oP+`gOEH!H0)$Ag#vhbbgxJ7_}j4%hVt^N-LCW-w%(Vce1ee6?#dA&4GWS zt4M7LfBi?ox56JmJXoMy`}z;YQ7AlGp!-iyyGRYZfZ|3(0@BfQQTf(O!h5yeth~Ou z{>!#0>*O7{RL$!#@WxTsnhc2OxlrC>;S4=jL%PI3cXyQwZQ+3~x+Baj&Zp5$?SGrD* z1ji+p9c9W&Gix=ERxLmPL&_8ZOoU)|$l!cp7GKA5?b{D@^hDx<`5^#!{fy{I9P$AECh6Ig=OjH1J|ls1DvI{ggD5>sD<@fMnSl`;R0RCMi#di^DQ59?BxZl> zSP6Flvm4Y9E2oQ5bbOMv9crL6M@<9-L5)cUYGM{&N22y<5VaYhw%zS)z;lI~WJ4g7 z&>8}yFIxG1%e4pZJr=gO8yhh3;@{p$5OR?aye+q{r(X!$CmNdsJBg8_QIt0JZ9W5= zt4a}YE6Lx1l~}^pkyw49SW$r8wkC43!;+?SdhOb>e4 zn>IxN&Y%e3GZq>k@unmlApn?{-T@lh#N!Ww_Jf87G?9HC-0cDdM&5-+tb9Usn3&03 zC=VDZ9dXS#YCE|O1s|@3pmTydkJ>3;idPD_9D?3u^x6e0zsyJ~w9VG8X4PhcFIdDN zj3&Vas*a?gF^|D?;&&Bx%+7$D?o}JrY;F5EX(jdcPW)=)Fy7tFntRoaC_kB=9>=@t z?{@WGYDcZ}12Jcz7z9eq;en>OC8hWgMl(IxG4R0Etes|i?JPM=Z+CP$?bYb5-c$E_ zPbFPS>gb4P&vumLC$@}=I{gh+@r83&Q7@DFshAiQk&U4y1jBeUT~8X?QP?v?84rSx z)H)ci<_z{8cnrdlWcmEjm86|U+m&X$o>(uCm`0-w=|0(r?}ri$_k{5MWI-=0L-Say z-6cg~Sa*fZcR~@4VGs-<$D<;gyReQyH^g>{+o8UbA^~0VplxS#L@$n%d2|7fp;vjR z{jX`L{{Qs`4aP2FESHzDdF>csZ#8XOtLjZS3|}!D2=KXTazt*lW^cY>6_VFi+N0$-oH+$>3f_XGWqw_pzBBJ(u47qdW z9nU3oyBWEpHBy<|&7S++YI)4tZbF{PHPmU_O`T`ycm7G+&Bl&?HfOszc%j>VPR4e# zac7?73ER!Ycx-RJcGK`Yjq3eKhLfqAif3u4$!vBn$IMUJUxicKDcrj!uH6Cy;X_cE z3!9L>U=p7~A2bzo`jT0IA_dI)ekoGd!IA{M}KYhH*4xAO{)ZcZ;X{$+M!hMj~;*=C*XsevpvaFXREl*Doq z%;2kG2?-;3m2&O7k`9-WT7}yJiahhlVPCh?6)F@3O5o$tG`Jm1;!_CUHO4pI*=5CY zOYq(7;OqWkv@3Rsvx=sOn^@Z6PQeFZ1g}C6pJj*>2BNH&0TJJ?xw~~qOeY_YtX|mS ze?Uq_#0@VWVGZv>1^SkbuChqMVieyKj`Ci)RpXM`AVWEs*7HuACS@&T$MUiiZp*1N z#91+muOoqcUW1ghw?Yqui@NNVX}N>7>VTjtnO0Or)(k|&8s3jY^mad@h^<(Amb5pn zRU7S0_NM_#UKc=3gllZngaRMd@Gb=Ijs~Z9zX~>5^1?-F0$kYb3y73a{QXLZb{J97 OENJuwDk1v)qyGUvt5fa( literal 0 HcmV?d00001 diff --git a/vemserver/.vemapi2.rb.un~ b/vemserver/.vemapi2.rb.un~ index 87cd1d0e7da89d91c0049e452db00b04e8499a0d..cc77da93c03a24001d88007e660510fba20bfb92 100644 GIT binary patch delta 218 zcmbPdHq&;3mAVWA0|O%va{)03fM^(I2+O+M!2*(H-k2yV%*eU9T$r6rk^`y)NPz(- zkOX0w&4v7~j1w0q$^!L;g7q;me3byofOK#Ju{IDhPCmz^AYTL| u^aL4W1T>}{Vm-tdkZPDaL9P=}%1(+%t%;Dk+OIg zQ-~QngkhipcIzc6a75VmGJSuRG)F@Dfg)>(=r^4g8U(MW z_nI=vCHm|C<4u~RI^IA^IHKGjD54cZawACq6TR)QSHJ{3Knz{$2N$AKk?XB%f!{_xbFBJ%6 Kp 'log' - -t = Thread.new do -Vemapi.run! :host => '192.168.4.146', :port => 9090 -end - - diff --git a/vemserver/thread.rb~ b/vemserver/thread.rb~ deleted file mode 100644 index 721e103..0000000 --- a/vemserver/thread.rb~ +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env ruby -I c:/Users/iwasaki/gem/sinatra-master/lib -I lib - -require './vemapi2' - -#pid = spawn 'ruby', 'vemapi2.rb', :out => 'log' - -Vemapi.run! :host => '192.168.4.146', :port => 9090 - diff --git a/vemserver/vemapi2.rb~ b/vemserver/vemapi2.rb~ index e10c3b0..66c56b2 100644 --- a/vemserver/vemapi2.rb~ +++ b/vemserver/vemapi2.rb~ @@ -3,130 +3,42 @@ $:.unshift(File.dirname(__FILE__)) require 'sinatra/base' -<<<<<<< HEAD -require '../vem/vem' -require '../vem/mock' -begin - require '../vem/feicontrol' -rescue LoadError -end -#require 'vem/jeolcontrol' -#require './vem/hitachicontrol' - -class Vemapi < Sinatra::Base - - # @@vem = nil -======= require './channel' require './request' class Vemapi < Sinatra::Base - @@channel = Channel.instance ->>>>>>> e5709e205eb16649d7ad3d8185a6989021f6696a - - get '/' do - headers \ - "Access-Control-Allow-origin" => "*" - 'VEM API test' - end - -<<<<<<< HEAD - - get '/:emname/init' do - headers \ - "Access-Control-Allow-origin" => "*" - - if settings.development? - vem = VEM.create("mock") - print "created mock instance" - else - vem = VEM.create(params[:emname]) - print "created #{params[:emname]} instance" - end - - return "created #{params[:emname]} instance" - end - - - get '/:emname/get' do - headers \ - "Access-Control-Allow-origin" => "*" - - if settings.development? - vem = VEM.create("mock") - print "created mock instance" - else - vem = VEM.create(params[:emname]) - print "created #{params[:emname]} instance" - end - - result = vem.get_params - "#{result}" - end - - - get '/:emname/set/stagea' do - headers \ - "Access-Control-Allow-origin" => "*" - if settings.development? - vem = VEM.create("mock") - print "created mock instance" - else - vem = VEM.create(params[:emname]) - print "created #{params[:emname]} instance" - end - -result = vem.set_stageA(params["x"].to_i, params["y"].to_i, params["z"].to_i, params["a"].to_i) - "#{result}" - end - - - get '/:emname/set/stager' do - headers \ - "Access-Control-Allow-origin" => "*" - result = @@vem.set_stageR(params["x"].to_i, params["y"].to_i, params["z"].to_i, params["a"].to_i) - "#{result}" - end - - get '/:emname/set/acq' do - headers \ - "Access-Control-Allow-origin" => "*" - result = @@vem.acquisition_init(params["bin"].to_i, params["expt"].to_i, params["size"].to_i) - "#{result}" -======= - get '/:emname/get' do - headers \ - "Access-Control-Allow-origin" => "*" - request = Request.new("get", nil) - @@channel.put_request(request) - end - - get '/:emname/set/:command' do - headers \ - "Access-Control-Allow-origin" => "*" - request = Request.new(params["command"], params) - @@channel.put_request(request) ->>>>>>> e5709e205eb16649d7ad3d8185a6989021f6696a - end - - get '/:emname/acq' do - headers \ - "Access-Control-Allow-origin" => "*" -<<<<<<< HEAD - result = @@vem.acquisition - "#{result}" - end - -end - -======= - request = Request.new(params["command"], params) - @@channel.put_request(request) - end + set : production + @@channel = Channel.instance + + get '/' do + headers \ + "Access-Control-Allow-origin" => "*" + 'VEM API test' + end + + get '/:emname/get' do + headers \ + "Access-Control-Allow-origin" => "*" + request = Request.new("get", nil) + @@channel.put_request(request) + end + + get '/:emname/set/:command' do + headers \ + "Access-Control-Allow-origin" => "*" + request = Request.new(params["command"], params) + @@channel.put_request(request) + end + + get '/:emname/acq' do + headers \ + "Access-Control-Allow-origin" => "*" + request = Request.new(params["command"], params) + @@channel.put_request(request) + end end channel = Channel.instance channel.start_worker Vemapi.run! :host => '192.168.4.145', :port => 9090 ->>>>>>> e5709e205eb16649d7ad3d8185a6989021f6696a diff --git a/vemserver/workerThread.rb b/vemserver/workerThread.rb index b0a252d..0f9c19d 100644 --- a/vemserver/workerThread.rb +++ b/vemserver/workerThread.rb @@ -1,5 +1,7 @@ require 'singleton' require './channel' +require '../vem/vem' +require '../vem/feicontrol' class WorkerThread @@ -11,6 +13,7 @@ class WorkerThread puts "worker_thread start" Thread.new do while true do + puts "true" request = @channel.take_request request.execute end diff --git a/vemserver/workerThread.rb~ b/vemserver/workerThread.rb~ new file mode 100644 index 0000000..0f9c19d --- /dev/null +++ b/vemserver/workerThread.rb~ @@ -0,0 +1,22 @@ +require 'singleton' +require './channel' +require '../vem/vem' +require '../vem/feicontrol' + +class WorkerThread + + def initialize(channel) + @channel = channel + end + + def start + puts "worker_thread start" + Thread.new do + while true do + puts "true" + request = @channel.take_request + request.execute + end + end + end +end -- 2.11.0