Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PR-BR] Create the-process-module.md #2637

Merged
merged 4 commits into from
Oct 9, 2019
Merged

[PR-BR] Create the-process-module.md #2637

merged 4 commits into from
Oct 9, 2019

Conversation

adrianoapj
Copy link
Contributor

No description provided.

@Aissaoui-Ahmed Aissaoui-Ahmed changed the title Create the-process-module.md in portuguese language [PR-BR] Create the-process-module.md Oct 3, 2019
@khaosdoctor
Copy link
Member

Looking into it :)

Copy link
Member

@khaosdoctor khaosdoctor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor changes e some untranslated text

layout: knowledge-post.hbs
---

Cada processo do Node.js tem uma série de funcionalidades embutidas, acessíveis através do módulo global `process`. O módulo `process` não precisa ser requisitado - isso é, de certo modo, literalmente um wrapper em volta do processo sendo executado, e muitos dos métodos que isto exibe, nada mais são do que wrappers em torno de chamadas de algumas das bibliotecas em C do núcleo do Node.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Cada processo do Node.js tem uma série de funcionalidades embutidas, acessíveis através do módulo global `process`. O módulo `process` não precisa ser requisitado - isso é, de certo modo, literalmente um wrapper em volta do processo sendo executado, e muitos dos métodos que isto exibe, nada mais são do que wrappers em torno de chamadas de algumas das bibliotecas em C do núcleo do Node.
Cada processo do Node.js tem uma série de funcionalidades embutidas, acessíveis através do módulo global `process`. O módulo `process` não precisa ser importado - ele é, de certo modo, literalmente um wrapper em volta do processo sendo executado, e muitos dos métodos que ele possui, nada mais são do que wrappers em torno de chamadas de algumas das bibliotecas em C do núcleo do Node.

});
```

Códigos como o acima podem ser realmente úteis para salvar algum tipo de registro final antes de encerrar a execução. Note o uso de uma chamada de um sistema de arquivos síncrono - isso é para garantir que a E/S de dados finalize antes que o processo.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Códigos como o acima podem ser realmente úteis para salvar algum tipo de registro final antes de encerrar a execução. Note o uso de uma chamada de um sistema de arquivos síncrono - isso é para garantir que a E/S de dados finalize antes que o processo.
Códigos como o acima podem ser realmente úteis para salvar algum tipo de registro final antes de encerrar a execução. Note o uso de uma chamada de um sistema de arquivos síncrono - isso é para garantir que a E/S de dados finalize antes do processo.


Códigos como o acima podem ser realmente úteis para salvar algum tipo de registro final antes de encerrar a execução. Note o uso de uma chamada de um sistema de arquivos síncrono - isso é para garantir que a E/S de dados finalize antes que o processo.

O outro evento embutido se chama `uncaughtException`. Como você já deve imaginar, ele é acionado sempre que ocorreu algum erro que não foi devidamente tratado em seu programa. Essa não é a forma ideal de processar erros, mas pode ser bem útil como última linha de defesa se um programa necessitar rodar continuamente mesmo após o erro.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
O outro evento embutido se chama `uncaughtException`. Como você já deve imaginar, ele é acionado sempre que ocorreu algum erro que não foi devidamente tratado em seu programa. Essa não é a forma ideal de processar erros, mas pode ser bem útil como última linha de defesa se um programa necessitar rodar continuamente mesmo após o erro.
O outro evento embutido se chama `uncaughtException`. Como você já deve imaginar, ele é acionado sempre que algum erro que não foi devidamente tratado em seu programa ocorre. Essa não é a forma ideal de processar erros, mas pode ser bem útil como última linha de defesa se um programa necessita rodar continuamente mesmo após o erro.


## Streams

O objeto `process` também disponibiliza alguns wrappings para as três streams `STDIO`, que são `stdin`, `stdout`, and `stderr`. De forma resumida, `stdin` é uma stream de entrada (que lê as informações inseridas pelo usuário), `stdout` é uma stream de saída não bloqueante (em outras palavras, é assíncrona), e `stderr` é uma stream de saída bloqueante (síncrona).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
O objeto `process` também disponibiliza alguns wrappings para as três streams `STDIO`, que são `stdin`, `stdout`, and `stderr`. De forma resumida, `stdin` é uma stream de entrada (que lê as informações inseridas pelo usuário), `stdout` é uma stream de saída não bloqueante (em outras palavras, é assíncrona), e `stderr` é uma stream de saída bloqueante (síncrona).
O objeto `process` também disponibiliza alguns wrappings para as três streams `STDIO`, que são `stdin`, `stdout` e `stderr`. De forma resumida, `stdin` é uma stream de entrada (que lê as informações inseridas pelo usuário), `stdout` é uma stream de saída não bloqueante (em outras palavras, é assíncrona), e `stderr` é uma stream de saída bloqueante (síncrona).

'node'
```

O `pid` é ID de processo do SO, `platform` é algo mais geral como 'linux' ou 'darwin', e `version` refere-se a sua versão do Node. `process.title` é um pouco mais diferente - enquanto definido como `node` por padrão, isto pode ser definido para o que voce desejar, e será o que aparecerá na sua lista de processos em execução.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
O `pid` é ID de processo do SO, `platform` é algo mais geral como 'linux' ou 'darwin', e `version` refere-se a sua versão do Node. `process.title` é um pouco mais diferente - enquanto definido como `node` por padrão, isto pode ser definido para o que voce desejar, e será o que aparecerá na sua lista de processos em execução.
O `pid` é ID de processo do SO, `platform` é algo mais geral como 'linux' ou 'darwin', e `version` refere-se a sua versão do Node. `process.title` é um pouco diferente - enquanto definido como `node` por padrão, isto pode ser definido para o que você desejar, e será o que aparecerá na sua lista de processos em execução.


O módulo `process` também exibe `process.argv`, um array contendo os argumentos de linha de comando command-line para o processo atual, e `process.argc`, um inteiro representando a quantidade de argumentos que foram passados. Leia mais em [como manusear argumentos na linha de comando](/pt-br/knowledge/command-line/how-to-parse-command-line-arguments/)

`process.execPath` will return the absolute path of the executable that started this process.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
`process.execPath` will return the absolute path of the executable that started this process.
`process.execPath` vai retornar o caminho absoluto do executável que começou o processo em questão


Existe também uma variedade de métodos vinculados ao objeto `process`, muitos dos quais lidam com aspectos bem avançados de um programa. Vamos dar uma olhada nos que normalmente são os mais usados, enquanto deixamos as partes mais avançadas para outros artigos.

`process.exit` encerra o processo. Se você chamar uma função assíncrona e então chamar `process.exit()` imediatamente após, você está em uma situação imprevisível - a chamada assíncrona pode, ou não ser finalizada antes do término do programa. `process.exit` aceita apenas um parâmetro adicional - um número inteiro como código de saída. `0`, por convenção, é uma saída sem erros.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
`process.exit` encerra o processo. Se você chamar uma função assíncrona e então chamar `process.exit()` imediatamente após, você está em uma situação imprevisível - a chamada assíncrona pode, ou não ser finalizada antes do término do programa. `process.exit` aceita apenas um parâmetro adicional - um número inteiro como código de saída. `0`, por convenção, é uma saída sem erros.
`process.exit` encerra o processo. Se você chamar uma função assíncrona e então chamar `process.exit()` imediatamente após, você está em uma situação imprevisível - a chamada assíncrona pode ou não ser finalizada antes do término do programa. `process.exit` aceita apenas um parâmetro adicional - um número inteiro como código de saída. `0`, por convenção, é uma saída sem erros.

'/home/avian'
```

Finalmente, em uma nota mais avançada, nós temos o `process.nextTick`. Este método aceita um argumento - um callback - e coloca isso no topo da próxima execução do loop do evento. Algumas pessoas fazem algo parecido com isso:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Finalmente, em uma nota mais avançada, nós temos o `process.nextTick`. Este método aceita um argumento - um callback - e coloca isso no topo da próxima execução do loop do evento. Algumas pessoas fazem algo parecido com isso:
Finalmente, em uma nota mais avançada, nós temos o `process.nextTick`. Este método aceita um argumento - um callback - e coloca isso no topo da próxima execução do event loop. Algumas pessoas fazem algo parecido com isso:

});
```

Assim é bem mais eficiente, e muito mais preciso.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Assim é bem mais eficiente, e muito mais preciso.
Além de bem mais eficiente, é muito mais preciso.

Copy link

@TiagoDanin TiagoDanin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 LGTM

Copy link
Member

@khaosdoctor khaosdoctor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfect :)

@khaosdoctor
Copy link
Member

I think this one is ready to go @MaledongGit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants