语言互相调用的问题,到程序执行层就是进程间通讯的问题,因为一个程序执行的时候,对os来说就是一个或者多个进程。
linux间进程通讯的方法linux间进程通讯的方法主要有管道、命名管道、网络套接口socket以及unix system v ipc通讯机制消息队列、信号量和共享内存。详细原理就不多赘述。
管道
命名管道fifo
消息队列
windos下进程通讯的方法
windows有自己一些特有的通讯机制,我们也列一下:
剪贴板、动态数据交换dde
对象链接于嵌入ole
动态链接库dll、win32 rpc调用
netbios函数和wm_copydata消息
语言嵌入除了以上方法外,有些语言还支持用一定的方法嵌入其他语言,比如在perl、python、ruby等教本语言中嵌入部分c语言以提高算法性能。
这类方法很多,我们简单举个python调用c的例子把。
一个累加程序
我们编译为sum.so,然后通过python调用执行。