Golang中的runtime.LockOSThread的优点
发布时间:2020-12-16 19:29:02 所属栏目:大数据 来源:网络整理
导读:Golang支持LockOSThread()使当前的goroutine与当前OS线程完全绑定,并且还可以使用UnlockOSThread(). 有没有从这个功能中受益的用例? 使用Go线程模型,调用C代码,汇编代码或阻塞系统调用发生在与Go运行时调度程序管理的调用Go代码相同的线程中. 当Go必须与一
Golang支持LockOSThread()使当前的goroutine与当前OS线程完全绑定,并且还可以使用UnlockOSThread().
有没有从这个功能中受益的用例?
使用Go线程模型,调用C代码,汇编代码或阻塞系统调用发生在与Go运行时调度程序管理的调用Go代码相同的线程中.
当Go必须与一些外部库(例如C库)接口时,os.LockOSThread()机制非常有用.它保证在同一个线程中对这个库进行几次连续的调用. 这在几种情况下很有意思 >一些graphic libraries(OS X Cocoa,OpenGL,SDL,…)要求在特定线程(或某些情况下主线程)上完成所有调用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |