Hi Levente,

Nop, I catch also stderr, but there is nothing here.

Jannik

2015-02-25 17:40 GMT+01:00 Levente Uzonyi <[email protected]>:

> Another possibility is that the program is writing to stderr instead of
> stdout.
>
> Levente
>
>
> On Wed, 25 Feb 2015, David T. Lewis wrote:
>
>  Hi Jannik,
>>
>> One other thing I just thought of: Check and see if your rostopic program
>> is actually writing to standard output, as opposed to writing directly to
>> /dev/tty. From a terminal window, I think you could do this:
>>
>> $ rostopic > out.txt
>>
>> If you run this get output written to the out.txt file, that is good. If
>> you run it and see output to your terminal window, it would mean that the
>> rostopic program was writing directly to /dev/tty (so there would never be
>> any output to read with a PipeableOSProcess).
>>
>> I would not worry about the missing AioPlugin. Your code should still work
>> without the plugin.
>>
>> Dave
>>
>>
>>  Hi Dave,
>>>
>>> 2015-02-25 1:13 GMT+01:00 David T. Lewis <[email protected]>:
>>>
>>>  On Tue, Feb 24, 2015 at 08:33:41PM +0100, jannik laval wrote:
>>>>
>>>>> Hi pharoers,
>>>>>
>>>>> I am playing with OSProcess.
>>>>> I am using an example, and I am annoyed with a strange bug:
>>>>>
>>>>> Here is the code I want to execute, and does not work:
>>>>> ====
>>>>> |thread process output|
>>>>> myCmd := 'rostopic bw /turtle1/pose'.
>>>>> thread := [process := (PipeableOSProcess command: myCmd) ] fork.
>>>>> 3 second wait.
>>>>> output := process upToEnd.
>>>>> output inspect.
>>>>> thread terminate.
>>>>> ===
>>>>>
>>>>
>>>> Hi Jannik,
>>>>
>>>> I am not familiar with the rostopic command, but it is common for some
>>>> Unix programs to flush their output when the stdout is connected to
>>>> /dev/tty (a terminal), but not necessarily if connected to a pipe or
>>>> to a file. So it may be that the running rostopic program is producing
>>>> output, but that the output has not yet been flushed to the pipe
>>>> connected
>>>> to your PipeableOSProcess.
>>>>
>>>>
>>> Thank you for your explanation.
>>> So, what I can do is to send a sigint to terminate the process and
>>> receive
>>> the info.
>>> But sending "process processProxy sigint." does nothing.
>>>
>>> By the way I have a warning on the AIOPlugin... Probably I should
>>> reinstall
>>> my VM.
>>>
>>> I also try "process flush", but it does not do anything.
>>>
>>>
>>>
>>>
>>>> Your #upToEnd call will read the available data from the OS pipe, but it
>>>> will not read data that was "written" by the rotopic program, but not
>>>> yet flushed out to the OSPipe. So I am guessing that this may be why the
>>>> data seems to be missing.
>>>>
>>>> I notice also that you are putting your PipeableOSProcess into a
>>>> separate
>>>> Smalltalk process using #fork. This is probably not necessary, so try
>>>> getting rid of the #fork and the later thread terminate. It will not fix
>>>> the problem for you, but it will simplify the code.
>>>>
>>>>
>>>
>>> Ok, it is simpler like that. You are right, it does not help :)
>>>
>>> Thank you for your help.
>>>
>>>
>>>
>>>> Dave
>>>>
>>>>
>>>>
>>>>> 'rostopic bw /turtle1/pose' is a command that is a loop displaying the
>>>>> current bandwidth of a ROS process. In a terminal, it works fine. With
>>>>> OSProcess the output value is empty.
>>>>>
>>>>> My source code is correct: if I replace myCmd by :
>>>>> myCmd := 'ping localhost'.
>>>>>
>>>>> It is a loop too, and it returns a correct string.
>>>>>
>>>>> I have clearly no idea of where I have to search... Any help or
>>>>>
>>>> discussion
>>>>
>>>>> about that would be great :)
>>>>>
>>>>> Thank you,
>>>>>
>>>>> Oups, some infos:
>>>>> I am using Ubuntu 14.04
>>>>> Pharo3.0 with Moose 5.0, latest update: #30863
>>>>> The script I use (rostopic) is a python script (does it impact ?)
>>>>>
>>>>>
>>>>> --
>>>>>
>>>>> ~~Jannik Laval~~
>>>>> ??cole des Mines de Douai
>>>>> Enseignant-chercheur
>>>>> http://www.jannik-laval.eu
>>>>> http://www.phratch.com
>>>>> http://www.approchealpes.info
>>>>> http://car.mines-douai.fr/
>>>>>
>>>>
>>>>
>>>>
>>>
>>> --
>>>
>>> ~~Jannik Laval~~
>>> Ã?cole des Mines de Douai
>>> Enseignant-chercheur
>>> http://www.jannik-laval.eu
>>> http://www.phratch.com
>>> http://www.approchealpes.info
>>> http://car.mines-douai.fr/
>>>
>>>
>>
>>
>>


-- 

~~Jannik Laval~~
École des Mines de Douai
Enseignant-chercheur
http://www.jannik-laval.eu
http://www.phratch.com
http://www.approchealpes.info
http://car.mines-douai.fr/

Reply via email to