MLFlush (C 函数)

MLFlush 已经被 WSFlush 所取代.

int MLFlush(MLINK link)

刷新包含在 link 中等待被发送的数据的任何缓冲区.

更多信息

  • 如果调用 MLNextPacket() 或任何 WLGet 函数,那么将自动调用 MLFlush().
  • 如果调用 MLReady(),那么需要先调用 MLFlush() 以确保任何必须输出的数据已被发送.
  • MLFlush() 在错误事件中返回0,如果函数成功则返回非零值.
  • 如果MLFlush() 失败,使用 MLError() 检索错误代码.
  • MLFlush() 在 MathLink 的标头文件 mathlink.h 中被声明.

范例

基本范例  (1)

#include "mathlink.h"

/* send the expression Integrate[1/x^2,x] to a link */

void f(MLINK lp)
{
    if(! MLPutFunction(lp, "EvaluatePacket", 1))
        { /* unable to put the function to lp */ }

    if(! MLPutFunction(lp, "ToExpression", 1))
        { /* unable to put the function to lp */ }

    if(! MLPutString(lp, "Integrate[1/x^2, x]"))
        { /* unable to put the string to lp */ }

    if(! MLEndPacket(lp))
        { /* unable to put the end of packet indicator to lp */ }

    if(! MLFlush(lp))
        { /* unable to flush the buffered data in lp */ }
}