Issue1562193
This issue tracker has been migrated to GitHub,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2006-09-20 13:10 by faramir2, last changed 2022-04-11 14:56 by admin. This issue is now closed.
Files | ||||
---|---|---|---|---|
File name | Uploaded | Description | Edit | |
prx.py | faramir2, 2006-09-20 13:10 | Script from bug report |
Messages (5) | |||
---|---|---|---|
msg29886 - (view) | Author: Marek Nowicki (faramir2) | Date: 2006-09-20 13:10 | |
Hello, I wrote that code in python and saved as prx.py: --- CUT --- from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler from time import strftime, gmtime import urllib2 import thread from sys import stdout class RequestHandler(BaseHTTPRequestHandler): def serve(self): print "%s %s %s\r\n%s" % (self.command, self.path, self.request_version, self.headers) header={} header["content-length"]=0 for i in str(self.headers).split("\r\n"): j=i.split(":", 1) if len(j)==2: header[j[0].strip().lower()] = j[1].strip() content=self.rfile.read(int(header["content- length"])) print content url="http://faramir2.prv.pl" u=urllib2.urlopen(url) for i,j in u.info().items(): print "%s: %s" % (i,j) self.server_version = "Apache" self.sys_version = "" self.send_response(200) self.send_header("Content-type", "text/html; charset=ISO-8859-2") self.send_header("Connectin", "close") self.end_headers() def do_POST(self): self.serve() def do_HEAD(self): self.serve() def do_GET(self): self.serve() address = ("", 80) server = HTTPServer(address, RequestHandler) thread.start_new_thread(server.serve_forever, () ) --- CUT --- When I right click on that file and select "Edit with IDLE" it opens. Then when I push F5 the script is running. *Python Shell* is restarting. But when I try to connect by browser to http:// localhost:80/ IDLE Hung-up. I don't see that hung ups when I open IDLE from shortcut and then in IDLE open file prx.py and run it works normally - good. IDLE does't hung up. I don't know why it works like that, but I think that it's bug.. Python version: 2.5c2 Tk version: 8.4 IDLE version: 1.2c2 OS Version: Microsoft Windows XP Professional with SP2 --- Again: * Freeze: > "C:\Python25\pythonw.exe" "C:\Python25\Lib\idlelib\idle.pyw" -n -e "prx.py" // then F5 on IDLE // when run open Browser and try to open page: http:// localhost:80 // IDLE freezes * Works ok: > "C:\Python25\pythonw.exe" "C:\Python25\Lib\idlelib\idle.pyw" -e // open prx.py in IDLE // press F5 on IDLE // run Browwser and try to open page: http:// localhost:80 // all works ok --- regards, Marek |
|||
msg29887 - (view) | Author: Tal Einat (taleinat) * | Date: 2006-12-09 17:54 | |
Well, the issue obviously only happens when IDLE is running without a subprocess. The code you pasted is unindtented so I'm not going to try it out... My guess would be that your server is blocking in a way that it blocks all threads. This is why, when it is run in the same process as IDLE's GUI, IDLE hangs. However, when you run IDLE with a subprocess, it's the subprocess which is blocked, so IDLE works normally. (this is what the subprocess is there for :) In any case, IDLE is behaving just fine here. This isn't a bug in IDLE. This could be a bug with the thread module, or a bug in BaseHTTPServer, or several other places. But it is most likely caused by some misunderstanding on your part of blocking operations, threads, and the interaction between them. You should have tried posting this on c.l.py before posting a bug on SF, and I suggest you do so now. |
|||
msg29888 - (view) | Author: Kurt B. Kaiser (kbk) * | Date: 2007-02-05 06:18 | |
Well, Tal Einat has more patience than I do, and it sounds like he diagnosed your problem. I'm setting this pending, it will close in a couple of weeks if you don't respond with further comments. |
|||
msg29889 - (view) | Author: Marek Nowicki (faramir2) | Date: 2007-02-05 11:13 | |
Ok. You can close this now. Thanks for responses. |
|||
msg29890 - (view) | Author: Kurt B. Kaiser (kbk) * | Date: 2007-02-06 03:23 | |
OK, thanks. |
History | |||
---|---|---|---|
Date | User | Action | Args |
2022-04-11 14:56:20 | admin | set | github: 43998 |
2006-09-20 13:10:34 | faramir2 | create |