我刚刚开始使用python,我开发了一个简单的程序来分叉父进程.这是我到目前为止编写的代码......
#!/usr/bin/env python
import os
def child():
print "We are in the child process with PID= %d"%os.getpid()
def parent():
print "We are in the parent process with PID= %d"%os.getpid()
newRef=os.fork()
if newRef==0:
child()
else:
print "We are in the parent process and our child process has PID= %d"%newRef
parent()
Run Code Online (Sandbox Code Playgroud)
根据我的理解,代码应该从调用父进程开始并显示其PID.然后,os.fork()
调用它并创建父进程的副本,并且因为我们已经在父进程中,所以该newRef
变量应该包含一个肯定的值,else
而我的代码部分应该是应该执行的那个.我的问题是:为什么代码会在child()
之后启动调用函数,尽管if
我的代码部分不应该执行.
提前致谢 :)
我根据逻辑来编写以下程序,素数只能被1和它自身整除.所以我只是经历了将它划分为大于1且小于其自身的所有数字的过程,但我似乎遇到了问题,因为我将所有输入的数字都设为真.这是我的代码......
divisible(X,Y) :-
Y < X,
X mod Y is 0,
Y1 is Y+1,
divisible(X,Y1).
isprime(X) :-
integer(X),
X > 1,
\+ divisible(X,2).
Run Code Online (Sandbox Code Playgroud)
提前致谢 :)