Do someone know what's the problem here. Why object is changing to netref?

On Tuesday, November 17, 2015 at 6:40:18 AM UTC+5, Enrique Soto Mendoza 
wrote:
>
> Hi baco, 
>
> I'm stucked in the same issue. Did you overcome it? 
> Thanks
>
> El jueves, 28 de junio de 2012, 2:46:13 (UTC-5), baco escribió:
>>
>> Hi Tomer,
>> I rewrite some code to show the problem, I described below:
>> -s1.py : the service server to get array info asked by client.py
>> -s2.py: the gui: show information send by client.py
>> -client.py: get information from any device/source info, compile and use 
>> an remote GUI to show info
>>
>> Again, the aim of this project is to get infos from devices servers, 
>> compile info in client.py then send infos to some gui server.
>>
>> Clearly this example have no sense, but only show the error about the 
>> access to the method tostring().
>> Hope it helps !
>>
>> ####s1.py
>> '''
>> Server 1 : serve an array
>> '''
>> import rpyc,sys
>> from rpyc.utils.server import ThreadedServer
>> import numpy as np
>>
>> class ArrayService(rpyc.Service):        
>>   def exposed_GetArray(self):
>>     array=np.array([[1,2,3],[4,5,6]])
>>     return array
>> if __name__ == "__main__":
>>   if len(sys.argv)==2: port = int(sys.argv[1])
>>   else: port = 2222
>>   server = ThreadedServer(ArrayService, port = 
>> port,hostname="localhost",protocol_config={'allow_all_attrs':True})
>>   server.start()
>>
>>
>> ####s2.py
>> '''
>> Server 2  Gui for Array
>> '''
>> import rpyc,sys
>> from rpyc.utils.server import ThreadedServer
>> #import numpy as np
>> import numpy as np
>>
>> class WatchService(rpyc.Service):        
>>   def exposed_ShowArray(self,array):
>>     print array.tostring() #it fails!
>>     return True
>> if __name__ == "__main__":
>>   if len(sys.argv)==2: port = int(sys.argv[1])
>>   else: port = 2223
>>   server = ThreadedServer(WatchService, port = 
>> port,hostname="localhost",protocol_config={'allow_all_attrs':True})
>>   server.start()
>>
>>
>> #####client.py
>> # -*- coding: UTF-8 -*-
>> '''
>> Client get from Server1 (s1.py) to Server2 (s2.py)
>> '''
>> import rpyc,time,subprocess,os,signal
>>
>> proc=[]
>> proc.append(subprocess.Popen(r"python .\s1.py "+str(2222),  bufsize=-1, 
>> creationflags = subprocess.CREATE_NEW_CONSOLE).pid)
>> proc.append(subprocess.Popen(r"python .\s2.py "+str(2223),  bufsize=-1, 
>> creationflags = subprocess.CREATE_NEW_CONSOLE).pid)
>> time.sleep(1)
>> Server1=rpyc.connect("localhost",2222)
>> Server2=rpyc.connect("localhost",2223)
>>
>> array=Server1.root.GetArray()
>> print array.tostring() #it works!
>> Server2.root.ShowArray(array)
>> for i in range(len(proc)):
>>   time.sleep(0.1)
>>   print "kill ",proc[i],'   ',os.kill(proc[i],signal.SIGTERM )==None
>>
>>
>>
>> regards,
>> -damien
>>
>> Le lundi 25 juin 2012 17:54:15 UTC+2, Tomer Filiba a écrit :
>>>
>>> you'd have to provide a code snippet that reconstructs the problem.
>>>
>>> but if ultimately need to copy the ndarray from one process to another 
>>> (passing it by value),
>>> you can use obtains. see 
>>> http://rpyc.sourceforge.net/api/utils_classic.html#rpyc.utils.classic.obtain
>>>
>>> -----------------------------------------------------------------
>>>     
>>> *Tomer Filiba* 
>>> tomerfiliba.com     <http://www.facebook.com/tomerfiliba>     
>>> <http://il.linkedin.com/in/tomerfiliba> 
>>>
>>>
>>>
>>> On Mon, Jun 25, 2012 at 3:35 PM, baco <damien> wrote:
>>>
>>>> Hi all,
>>>> I have a <netref class 'numpy.ndarray'> object (server side) and I 
>>>> can't access to any of method (in particular the .tostring()). 
>>>> Data from this object is ok, but need to have the 'real' numpy.ndarray 
>>>> from my client, to use it.
>>>> thanks for help
>>>> -baco
>>>>
>>>
>>>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"rpyc" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to