06-05-2007
exception vs. multiple-thread
Some questions regarding exception vs. multiple-thread :
1. there are one main thread and one child thread. the child thread may throw one exception but it doesn't try to catch any exception. in the main thread, it tries to catch excpetion. Can main thread catch the exception that is thrown from child thread?
2. if child tread may throw exception, and neither main tread nor child tread will catch exception. What is the consequence if the child tread really throws one exception. Which tread is crash? Or both crash?
Anyone can help? Thanks.
5 More Discussions You Might Find Interesting
1. IP Networking
Hi Friends,
I have written a program which will listener for more than 1000 requests per second from a single socket descriptor and then it will process those requestes. Its taking X amount of time. Now i want to reduce that time. Will I can write multiple threads to receive the... (2 Replies)
Discussion started by: pa.chidhambaram
2 Replies
2. Shell Programming and Scripting
Thanks everyone for the wonderful and helping environment..
And the problem I asked.. forget it... 4 days wait for a decent reply was such a moral booster.. (3 Replies)
Discussion started by: ReignOfChaos
3 Replies
3. Programming
Hi all,
Can I create multiple threads using single thread_id
like
pthread_t thread_id;
pthread_create(&thread_id, NULL, &print_xs, NULL);
pthread_create(&thread_id, NULL, &print_ys, NULL);
pthread_create(&thread_id, NULL, &print_zs, NULL);
pthread_join(thread_id, NULL);
what... (2 Replies)
Discussion started by: zing_foru
2 Replies
4. Shell Programming and Scripting
Hi Folks,
please advise , I have logs generated on unix machine at location /ops/opt/aaa/bvg.log , now sometimes there come exception in these logs also, so I want to write such a script such that it should continuously monitor these logs and whenever any exception comes that is it try to find... (3 Replies)
Discussion started by: tuntun27272727
3 Replies
5. Shell Programming and Scripting
Hi folks,
I have logs folder in which different type of logs are generated , I am monitoring them by the below command
tail -f *.log
but I want that if exception come in any of the logs then it should be catch so what i should prefix with tail -f *.log so that it imeediatley catches and... (3 Replies)
Discussion started by: punpun66
3 Replies
LEARN ABOUT DEBIAN
plack::middleware::httpexceptions
Plack::Middleware::HTTPExceptions(3pm) User Contributed Perl Documentation Plack::Middleware::HTTPExceptions(3pm)
NAME
Plack::Middleware::HTTPExceptions - Catch HTTP exceptions
SYNOPSIS
use HTTP::Exception;
my $app = sub {
# ...
HTTP::Exception::500->throw;
};
builder {
enable "HTTPExceptions", rethrow => 1;
$app;
};
DESCRIPTION
Plack::Middleware::HTTPExceptions is a PSGI middleware component to catch exceptions from applications that can be translated into HTTP
status codes.
Your application is supposed to throw an object that implements a "code" method which returns the HTTP status code, such as 501 or 404.
This middleware catches them and creates a valid response out of the code. If the "code" method returns a code that is not an HTTP redirect
or error code (3xx, 4xx, or 5xx), the exception will be rethrown.
The exception object may also implement "as_string" or overload stringification to represent the text of the error. The text defaults to
the status message of the error code, such as Service Unavailable for 503.
Finally, the exception object may implement "as_psgi", and the result of this will be returned directly as the PSGI response.
If the code is in the 3xx range and the exception implements the 'location' method (HTTP::Exception::3xx does), the Location header will be
set in the response, so you can do redirects this way.
There are CPAN modules HTTP::Exception and HTTP::Throwable, and they are perfect to throw from your application to let this middleware
catch and display, but you can also implement your own exception class to throw.
If the thrown exception is not an object that implements either a "code" or an "as_psgi" method, a 500 error will be returned.
Alternatively, you can pass a true value for the "rethrow" parameter for this middleware, and the exception will instead be rethrown. This
is enabled by default when "PLACK_ENV" is set to "development", so that the StackTrace middleware can catch it instead.
AUTHOR
Tatsuhiko Miyagawa
SEE ALSO
paste.httpexceptions HTTP::Exception HTTP::Throwable
perl v5.14.2 2011-06-22 Plack::Middleware::HTTPExceptions(3pm)