@@ -857,17 +857,25 @@ msgid ""
857
857
"calls will be restarted when interrupted by signal *signalnum*, otherwise "
858
858
"system calls will be interrupted. Returns nothing."
859
859
msgstr ""
860
+ "Altera o comportamento de reinicialização de chamadas de sistema: se *flag* "
861
+ "for :const:`False`, as chamadas de sistema serão reiniciadas quando "
862
+ "interrompidas pelo sinal *signalnum*; caso contrário, as chamadas de sistema "
863
+ "serão interrompidas. Não retorna nada."
860
864
861
865
#: ../../library/signal.rst:563
862
866
msgid "See the man page :manpage:`siginterrupt(3)` for further information."
863
- msgstr ""
867
+ msgstr "Veja a página man :manpage:`siginterrupt(3)` para mais informações. "
864
868
865
869
#: ../../library/signal.rst:565
866
870
msgid ""
867
871
"Note that installing a signal handler with :func:`signal` will reset the "
868
872
"restart behaviour to interruptible by implicitly calling :c:func:`!"
869
873
"siginterrupt` with a true *flag* value for the given signal."
870
874
msgstr ""
875
+ "Observe que a instalação de um manipulador de sinal com :func:`signal` "
876
+ "redefinirá o comportamento de reinicialização para interrompível ao chamar "
877
+ "implicitamente :c:func:`!siginterrupt` com *flag* contendo valor verdadeiro "
878
+ "para o sinal fornecido."
871
879
872
880
#: ../../library/signal.rst:572
873
881
msgid ""
@@ -878,6 +886,12 @@ msgid ""
878
886
"`getsignal` above). (See the Unix man page :manpage:`signal(2)` for further "
879
887
"information.)"
880
888
msgstr ""
889
+ "Define o manipulador do sinal *signalnum* para a função *handler*. *handler* "
890
+ "pode ser um objeto Python invocável que recebe dois argumentos (veja "
891
+ "abaixo), ou um dos valores especiais :const:`signal.SIG_IGN` ou :const:"
892
+ "`signal.SIG_DFL`. O manipulador de sinal anterior será retornado (veja a "
893
+ "descrição de :func:`getsignal` acima). (Consulte a página man do Unix :"
894
+ "manpage:`signal(2)` para mais informações.)"
881
895
882
896
#: ../../library/signal.rst:583
883
897
msgid ""
@@ -886,6 +900,10 @@ msgid ""
886
900
"objects, see the :ref:`description in the type hierarchy <frame-objects>` or "
887
901
"see the attribute descriptions in the :mod:`inspect` module)."
888
902
msgstr ""
903
+ "O *handler* é chamado com dois argumentos: o número do sinal e o quadro de "
904
+ "pilha atual (``None`` ou um objeto quadro; para uma descrição dos objetos "
905
+ "quadro, consulte a :ref:`descrição na hierarquia de tipo <frame-objects>` ou "
906
+ "consulte as descrições de atributo no módulo :mod:`inspect`)."
889
907
890
908
#: ../../library/signal.rst:588
891
909
msgid ""
@@ -896,17 +914,27 @@ msgid ""
896
914
"an :exc:`AttributeError` will be raised if a signal name is not defined as "
897
915
"``SIG*`` module level constant."
898
916
msgstr ""
917
+ "No Windows, :func:`signal` só pode ser chamado com :const:`SIGABRT`, :const:"
918
+ "`SIGFPE`, :const:`SIGILL`, :const:`SIGINT`, :const:`SIGSEGV`, :const:"
919
+ "`SIGTERM` ou :const:`SIGBREAK`. Uma exceção :exc:`ValueError` será levantada "
920
+ "em qualquer outro caso. Observe que nem todos os sistemas definem o mesmo "
921
+ "conjunto de nomes de sinais; uma exceção :exc:`AttributeError` será "
922
+ "levantada se um nome de sinal não for definido como constante de nível de "
923
+ "módulo ``SIG*``."
899
924
900
925
#: ../../library/signal.rst:599
901
926
msgid ""
902
927
"Examine the set of signals that are pending for delivery to the calling "
903
928
"thread (i.e., the signals which have been raised while blocked). Return the "
904
929
"set of the pending signals."
905
930
msgstr ""
931
+ "Examine o conjunto de sinais pendentes para entrega ao thread de chamada (ou "
932
+ "seja, os sinais que foram gerados enquanto bloqueados). Retorne o conjunto "
933
+ "de sinais pendentes."
906
934
907
935
#: ../../library/signal.rst:605
908
936
msgid "See the man page :manpage:`sigpending(2)` for further information."
909
- msgstr ""
937
+ msgstr "Veja a página man :manpage:`sigpending(2)` para mais informações. "
910
938
911
939
#: ../../library/signal.rst:607
912
940
msgid "See also :func:`pause`, :func:`pthread_sigmask` and :func:`sigwait`."
@@ -919,16 +947,21 @@ msgid ""
919
947
"signal (removes it from the pending list of signals), and returns the signal "
920
948
"number."
921
949
msgstr ""
950
+ "Suspende a execução do thread de chamada até a entrega de um dos sinais "
951
+ "especificados no conjunto de sinais *sigset*. A função aceita o sinal "
952
+ "(remove-o da lista de sinais pendentes) e retorna o número do sinal."
922
953
923
954
#: ../../library/signal.rst:620
924
955
msgid "See the man page :manpage:`sigwait(3)` for further information."
925
- msgstr ""
956
+ msgstr "Veja a página man :manpage:`sigwait(3)` para mais informações. "
926
957
927
958
#: ../../library/signal.rst:622
928
959
msgid ""
929
960
"See also :func:`pause`, :func:`pthread_sigmask`, :func:`sigpending`, :func:"
930
961
"`sigwaitinfo` and :func:`sigtimedwait`."
931
962
msgstr ""
963
+ "Veja também :func:`pause`, :func:`pthread_sigmask`, :func:`sigpending`, :"
964
+ "func:`sigwaitinfo` e :func:`sigtimedwait`."
932
965
933
966
#: ../../library/signal.rst:630
934
967
msgid ""
@@ -940,6 +973,13 @@ msgid ""
940
973
"handler is not called for the delivered signal. The function raises an :exc:"
941
974
"`InterruptedError` if it is interrupted by a signal that is not in *sigset*."
942
975
msgstr ""
976
+ "Suspende a execução da thread chamadora até a entrega de um dos sinais "
977
+ "especificados no conjunto de sinais *sigset*. A função aceita o sinal e o "
978
+ "remove da lista de sinais pendentes. Se um dos sinais em *sigset* já estiver "
979
+ "pendente para a thread chamadora, a função retornará imediatamente com "
980
+ "informações sobre esse sinal. O manipulador de sinais não é chamado para o "
981
+ "sinal entregue. A função levanta :exc:`InterruptedError` se for interrompida "
982
+ "por um sinal que não esteja em *sigset*."
943
983
944
984
#: ../../library/signal.rst:639
945
985
msgid ""
@@ -948,43 +988,57 @@ msgid ""
948
988
"`si_errno`, :attr:`si_pid`, :attr:`si_uid`, :attr:`si_status`, :attr:"
949
989
"`si_band`."
950
990
msgstr ""
991
+ "O valor de retorno é um objeto que representa os dados contidos na estrutura "
992
+ "de :c:type:`siginfo_t`, a saber: :attr:`si_signo`, :attr:`si_code`, :attr:"
993
+ "`si_errno`, :attr:`si_pid`, :attr:`si_uid`, :attr:`si_status`, :attr:"
994
+ "`si_band`."
951
995
952
996
#: ../../library/signal.rst:646
953
997
msgid "See the man page :manpage:`sigwaitinfo(2)` for further information."
954
- msgstr ""
998
+ msgstr "Veja a página man :manpage:`sigwaitinfo(2)` para mais informações. "
955
999
956
1000
#: ../../library/signal.rst:648
957
1001
msgid "See also :func:`pause`, :func:`sigwait` and :func:`sigtimedwait`."
958
- msgstr ""
1002
+ msgstr "Veja também :func:`pause`, :func:`sigwait` e :func:`sigtimedwait`. "
959
1003
960
1004
#: ../../library/signal.rst:652
961
1005
msgid ""
962
1006
"The function is now retried if interrupted by a signal not in *sigset* and "
963
1007
"the signal handler does not raise an exception (see :pep:`475` for the "
964
1008
"rationale)."
965
1009
msgstr ""
1010
+ "A função agora é tentada novamente se interrompida por um sinal que não "
1011
+ "esteja em *sigset* e o manipulador de sinal não levanta uma exceção (veja :"
1012
+ "pep:`475` para a justificativa)."
966
1013
967
1014
#: ../../library/signal.rst:660
968
1015
msgid ""
969
1016
"Like :func:`sigwaitinfo`, but takes an additional *timeout* argument "
970
1017
"specifying a timeout. If *timeout* is specified as ``0``, a poll is "
971
1018
"performed. Returns :const:`None` if a timeout occurs."
972
1019
msgstr ""
1020
+ "Semelhante a :func:`sigwaitinfo`, mas recebe um argumento *timeout* "
1021
+ "adicional que especifica um tempo limite. Se *timeout* for especificado como "
1022
+ "``0``, uma consulta será realizada. Retorna :const:`None` se ocorrer um "
1023
+ "tempo limite."
973
1024
974
1025
#: ../../library/signal.rst:666
975
1026
msgid "See the man page :manpage:`sigtimedwait(2)` for further information."
976
- msgstr ""
1027
+ msgstr "Veja a página man :manpage:`sigtimedwait(2)` para mais informações. "
977
1028
978
1029
#: ../../library/signal.rst:668
979
1030
msgid "See also :func:`pause`, :func:`sigwait` and :func:`sigwaitinfo`."
980
- msgstr ""
1031
+ msgstr "Veja também :func:`pause`, :func:`sigwait` e :func:`sigwaitinfo`. "
981
1032
982
1033
#: ../../library/signal.rst:672
983
1034
msgid ""
984
1035
"The function is now retried with the recomputed *timeout* if interrupted by "
985
1036
"a signal not in *sigset* and the signal handler does not raise an exception "
986
1037
"(see :pep:`475` for the rationale)."
987
1038
msgstr ""
1039
+ "A função agora é tentada novamente com o *timeout* recalculado se "
1040
+ "interrompida por um sinal que não esteja em *sigset* e o manipulador de "
1041
+ "sinal não levanta uma exceção (veja :pep:`475` para a justificativa)."
988
1042
989
1043
#: ../../library/signal.rst:681
990
1044
msgid "Examples"
@@ -999,10 +1053,17 @@ msgid ""
999
1053
"alarm before opening the file; if the operation takes too long, the alarm "
1000
1054
"signal will be sent, and the handler raises an exception. ::"
1001
1055
msgstr ""
1056
+ "Aqui está um programa de exemplo mínimo. Ele usa a função :func:`alarm` para "
1057
+ "limitar o tempo gasto esperando para abrir um arquivo; isso é útil se o "
1058
+ "arquivo for para um dispositivo serial que pode não estar ligado, o que "
1059
+ "normalmente faria com que o :func:`os.open` travasse indefinidamente. A "
1060
+ "solução é definir um alarme de 5 segundos antes de abrir o arquivo; se a "
1061
+ "operação demorar muito, o sinal de alarme será enviado e o manipulador "
1062
+ "levantará uma exceção. ::"
1002
1063
1003
1064
#: ../../library/signal.rst:707
1004
1065
msgid "Note on SIGPIPE"
1005
- msgstr ""
1066
+ msgstr "Nota sobre SIGPIPE "
1006
1067
1007
1068
#: ../../library/signal.rst:709
1008
1069
msgid ""
@@ -1012,6 +1073,12 @@ msgid ""
1012
1073
"`BrokenPipeError: [Errno 32] Broken pipe`. To handle this case, wrap your "
1013
1074
"entry point to catch this exception as follows::"
1014
1075
msgstr ""
1076
+ "Canalizar a saída do seu programa para ferramentas como :manpage:`head(1)` "
1077
+ "fará com que um sinal :const:`SIGPIPE` seja enviado ao seu processo quando o "
1078
+ "receptor da saída padrão fechar antes do tempo. Isso resulta em uma exceção "
1079
+ "como :code:`BrokenPipeError: [Errno 32] Broken pipe`. Para lidar com esse "
1080
+ "caso, envolva seu ponto de entrada para capturar essa exceção da seguinte "
1081
+ "maneira:"
1015
1082
1016
1083
#: ../../library/signal.rst:736
1017
1084
msgid ""
@@ -1020,10 +1087,14 @@ msgid ""
1020
1087
"unexpectedly whenever any socket connection is interrupted while your "
1021
1088
"program is still writing to it."
1022
1089
msgstr ""
1090
+ "Não defina a disposição de :const:`SIGPIPE` como :const:`SIG_DFL` para "
1091
+ "evitar :exc:`BrokenPipeError`. Isso faria com que seu programa encerrasse "
1092
+ "inesperadamente sempre que qualquer conexão de soquete fosse interrompida "
1093
+ "enquanto o programa ainda estivesse escrevendo nele."
1023
1094
1024
1095
#: ../../library/signal.rst:745
1025
1096
msgid "Note on Signal Handlers and Exceptions"
1026
- msgstr ""
1097
+ msgstr "Nota sobre manipuladores de sinais e exceções "
1027
1098
1028
1099
#: ../../library/signal.rst:747
1029
1100
msgid ""
@@ -1035,10 +1106,18 @@ msgid ""
1035
1106
"exception resulting from a signal handler) may on rare occasions put the "
1036
1107
"program in an unexpected state."
1037
1108
msgstr ""
1109
+ "Se um manipulador de sinais levantar uma exceção, a exceção será propagada "
1110
+ "para a thread principal e poderá ser levantada após qualquer instrução :term:"
1111
+ "`bytecode`. Mais notavelmente, uma :exc:`KeyboardInterrupt` pode aparecer a "
1112
+ "qualquer momento durante a execução. A maioria dos códigos Python, incluindo "
1113
+ "a biblioteca padrão, não pode ser robusta contra isso, e, portanto, uma :exc:"
1114
+ "`KeyboardInterrupt` (ou qualquer outra exceção resultante de um manipulador "
1115
+ "de sinais) pode, em raras ocasiões, colocar o programa em um estado "
1116
+ "inesperado."
1038
1117
1039
1118
#: ../../library/signal.rst:754
1040
1119
msgid "To illustrate this issue, consider the following code::"
1041
- msgstr ""
1120
+ msgstr "Para ilustrar esse problema, considere o seguinte código: "
1042
1121
1043
1122
#: ../../library/signal.rst:771
1044
1123
msgid ""
@@ -1050,3 +1129,10 @@ msgid ""
1050
1129
"own :const:`SIGINT` handler. Below is an example of an HTTP server that "
1051
1130
"avoids :exc:`KeyboardInterrupt`::"
1052
1131
msgstr ""
1132
+ "Para muitos programas, especialmente aqueles que simplesmente desejam "
1133
+ "encerrar em :exc:`KeyboardInterrupt`, isso não é um problema, mas aplicações "
1134
+ "complexos ou que exigem alta confiabilidade devem evitar levantar exceções "
1135
+ "de manipuladores de sinal. Eles também devem evitar capturar :exc:"
1136
+ "`KeyboardInterrupt` como forma de encerrar o programa sem problemas. Em vez "
1137
+ "disso, devem instalar seu próprio manipulador :const:`SIGINT`. Abaixo está "
1138
+ "um exemplo de um servidor HTTP que evita :exc:`KeyboardInterrupt`::"