[Tutor] Python Daemons
dbosah
dbosah at buffalo.edu
Tue Aug 1 21:05:02 EDT 2017
Also here's the link to the tutorial
https://youtu.be/WrtebUkUssc
-------- Original message --------From: Steven D'Aprano <steve at pearwood.info> Date: 8/1/17 8:49 PM (GMT-05:00) To: tutor at python.org Subject: Re: [Tutor] Python Daemons
Hi Daniel,
My responses below.
On Tue, Aug 01, 2017 at 02:48:19PM -0400, Daniel Bosah wrote:
> I'm following an online tutorial about threading. This is the code I've
> used so far:
Can you give us a link to the tutorial?
[...]
> def portscan(port):
> s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> try:
> con = s.connect((target,port)) # con for connect
> with print_lock: # if sucessful run with statement
> print 'port', port, 'is open'
> con.close() # closes connection
> except:
> pass #if it doesn't work pass the method
I'm very concerned about that bare "except" line. I'm not absolutely
saying that it is wrong, but in general bare excepts are a terrible
idea.
https://realpython.com/blog/python/the-most-diabolical-python-antipattern/
> def threader():
> while True:
> worker = q.get()
> portscan(worker)
> q.task_done
> q = Queue()
> for x in range(30):
> t = threading.Thread(target = threader() #creates a thread, gets
> workers from q, set them to work on portscanning
> t.daemon() = True # want it to be a daemon
> t.start()
> #jobs = ports
> for worker in range(1,101): # port zero invalid port
> q.put(worker) # puts worker to work
> q.join() #waits till thread terminiates
>
>
> I don't know what a Daemon is,
https://en.wikipedia.org/wiki/Daemon_(computing)
> and I also don't know how to use it in
> Python 2.7. Apparently its built in Python 3, but I don't know how to use
> it in Python 2.7. Any help would be appreciated.
What happens when you try?
--
Steve
_______________________________________________
Tutor maillist - Tutor at python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor
More information about the Tutor
mailing list