我使用G-WAN 20年4月11日金桂冠API包裝和mono_add_internal_call
INIT.C
#pragma link "mono-2.0"
#pragma include "/home/igor/Projects/gwan_linux64-bit/mono-3.0.2"
#include "gwan.h" // G-WAN API
#include <mono/metadata/metadata.h>
#include <mono/metadata/loader.h>
#include <mono/metadata/object.h>
static MonoString* Sample()
{
return mono_string_new (mono_domain_get(), "Hello!");
}
int main(int argc, char *argv[])
{
mono_add_internal_call("Gwan::Sample", Sample);
return 0;
}
gwan_api.cs
public class Gwan
{
[MethodImplAttribute(MethodImplOptions.InternalCall)]
extern public static string Sample();
}
金桂冠開始與斷言:
ghashtable.c:236:斷言'hash!= NULL'失敗
比調用腳本後,我遇到了同樣的問題。
Unhandled Exception: System.MissingMethodException: Cannot find the requested method.
at (wrapper managed-to-native) Gwan:Sample()
at hello2.Main (System.String[] args) [0x00000] in <filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.MissingMethodException: Cannot find the requested method.
at (wrapper managed-to-native) Gwan:Sample()
at hello2.Main (System.String[] args) [0x00000] in <filename unknown>:0
我的感覺是,我沒有配置單聲道的權利,有什麼建議嗎?
讓它工作,如我所願,謝謝你的幫助。 – 2014-10-18 21:04:58
有趣的是,看起來像REQUEST,當我在cs servlet裏面時,很多get_env數據都被清除了。爲什麼不在執行後清除它? – 2014-10-18 21:53:52
請求上下文在請求處理完成後(部分)被清除,然後在連接關閉後(而不是在servlet執行時)完全清除。通過檢查servlet中客戶端套接字的值來檢查是否正在訪問「正確的」信息上下文。 – Gil 2014-10-20 15:26:51