Ποιος είναι ο καλύτερος τρόπος για να αντιγράψετε το πιρούνι () στα παράθυρα;

ψήφοι
22

Πώς μπορώ να εφαρμόσουν κάποια λογική που θα μου επιτρέψει να αναπαράγουν σε Windows τη λειτουργικότητα που έχω στο Linux με την fork()κλήση του συστήματος, χρησιμοποιώντας Python;

Είμαι ιδιαίτερα προσπαθεί να εκτελέσει μια μέθοδο για τη συνιστώσα SAPI Com, ενώ συνεχίζεται η άλλη λογική στο κύριο νήμα χωρίς να εμποδίζουν ή να περιμένει.

Δημοσιεύθηκε 22/08/2008 στις 21:27
πηγή χρήστη
Σε άλλες γλώσσες...                            


7 απαντήσεις

ψήφοι
0

Ενδεχομένως μια έκδοση του γόνου () για python; http://en.wikipedia.org/wiki/Spawn_(operating_system)

Απαντήθηκε 22/08/2008 στις 21:34
πηγή χρήστη

ψήφοι
3

Ρίξτε μια ματιά στις λειτουργίες διαχείρισης της διαδικασίας στην ενότητα os . Υπάρχουν λειτουργία για την έναρξη νέων διαδικασιών με πολλούς διαφορετικούς τρόπους, τόσο σύγχρονα και ασύγχρονα.

Θα πρέπει να σημειωθεί επίσης ότι τα Windows δεν παρέχει λειτουργικότητα που είναι ακριβώς όπως το πιρούνι () σε άλλα συστήματα. Για να το κάνετε πολυεπεξεργασία στα Windows, θα πρέπει να χρησιμοποιήσετε το σπείρωμα της μονάδας.

Απαντήθηκε 22/08/2008 στις 21:38
πηγή χρήστη

ψήφοι
3

Εκτός από τον κώδικα διαχείρισης της διαδικασίας στην ενότητα os που Greg τόνισε, θα πρέπει επίσης να ρίξετε μια ματιά στην ενότητα σπείρωμα: https://docs.python.org/library/threading.html

from threading import Thread

def separate_computations(x, y):
    print sum(x for i in range(y))  # really expensive multiplication

Thread(target=separate_compuations, args=[57, 83]).start()
print "I'm continuing while that other function runs in another thread!"
Απαντήθηκε 22/08/2008 στις 22:16
πηγή χρήστη

ψήφοι
2

Ίσως θα θέλατε επίσης με τη χρήση της μονάδας επεξεργασίας ( http://pypi.python.org/pypi/processing ). Έχει πολλά της λειτουργικότητας για το γράψιμο παράλληλα συστήματα με τον ίδιο API, όπως η μονάδα σπείρωμα ...

Απαντήθηκε 24/08/2008 στις 16:38
πηγή χρήστη

ψήφοι
3

Το παράδειγμα Threading από Eli θα τρέξει το νήμα, αλλά δεν το κάνουν οποιαδήποτε από τις εργασίες μετά από αυτή τη γραμμή.

Πάω να εξετάσει τη μονάδα επεξεργασίας και τη μονάδα υποεπεξεργασία. Νομίζω ότι η μέθοδος com Τρέχω πρέπει να είναι σε μια άλλη διαδικασία, όχι μόνο σε άλλο νήμα.

Απαντήθηκε 09/09/2008 στις 16:37
πηγή χρήστη

ψήφοι
10

fork() έχει στην πραγματικότητα έχουν αναπαραχθεί στα Windows, κάτω από Cygwin , αλλά είναι πολύ τριχωτό.

Η κλήση πιρούνι στο Cygwin είναι ιδιαίτερα ενδιαφέρουσα, διότι δεν χάρτη και στην κορυφή του API του Win32. Αυτό καθιστά πολύ δύσκολο να εφαρμοστεί σωστά.

Δείτε το Οδηγός χρήσης Το Cygwin για μια περιγραφή αυτού του hack.

Απαντήθηκε 04/10/2008 στις 15:10
πηγή χρήστη

ψήφοι
17

Χρησιμοποιήστε το python μονάδα πολυεπεξεργασία η οποία θα λειτουργήσει παντού.

Εδώ είναι ένα άρθρο IBM developerWords που δείχνει πώς να μετατρέψετε από os.fork () στη μονάδα πολυεπεξεργασία.

Απαντήθηκε 16/05/2011 στις 17:51
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more