Busca

Road trippin' w ma 2 fav allies

Tag

java

RV e Ensino

Pra liberar espaço no meu dropbox comecei a vasculhar meu arquivos e apagar algumas coisas antigas. De repente, me deparo com dois vídeos de um projeto que havia feito no 3º período do meu curso, enquanto cursava a disciplina de Computação Gráfica e pesquisava no LabTEVE (temas relacionados a Realidade Virtual). #nostalgia

Trata-se do LabSEF: Laboratório para Simulação de Experimentos Físicos. (dava pra ser mais criativo com esse nome :P)

Enfim… sempre gostei de física, daí aproveitei a disciplina pra fazer uma navegação em um mundo virtual 3D de modo que o estudante pudesse simular alguns experimentos. Ah.. também dava pra navegar no ambiente com estereoscopia (aka visão 3D).

Paper: Um Laboratório Virtual Tridimensional e Interativo para Suporte ao Ensino de Física

 

Anúncios

Sobre System Calls a partir de Java

Supomos que você tenha uma chamada de sistema que funciona quando você chama a partir do terminal. Se você executá-la com ProcessBuilder ou Runtime.getRuntime().exec(), e ela não funcionar (como funciona quando é chamada a partir do terminal) você deve estar enfrentando problemas na leitura dos streams (stdout/stderr) de saída do seu comando…

Como dito em http://alvinalexander.com/java/java-exec-processbuilder-process-3, se você não ler esses streams, sua chamada de sistema pode ser bloqueada.

“Because some native platforms only provide limited buffer size for standard input and output streams, failure to promptly write the input stream or read the output stream of the subprocess may cause the subprocess to block, and even deadlock.”

Já que a mesma linha em Java consegue executar outras chamadas de sistemas (com stream de saída menores), podemos ficar tentados a achar que o problema não está no nosso código. Mas de fato está, no modo em como lidamos com esses streams de saída.

Portanto, estou compartilhando este link (http://alvinalexander.com/java/java-exec-processbuilder-process-3), que pode ajudar pessoas a solucionar seu problema, assim como o meu foi solucionado.

Blog no WordPress.com.

Acima ↑