#include "simgrid/simix.h"
#include "src/kernel/context/ContextThread.hpp"
#include "src/simix/smx_private.hpp"
-#include "xbt/xbt_os_thread.h"
#include "jmsg.hpp"
JNIEnv* jenv_ = nullptr;
friend class JavaContextFactory;
- JavaContext(std::function<void()> code,
- void_pfn_smxprocess_t cleanup_func,
- smx_actor_t process);
+ JavaContext(std::function<void()>&& code, smx_actor_t actor);
void start_hook() override;
- void stop() override;
+ void stop_hook() override;
};
class JavaContextFactory : public simgrid::kernel::context::ContextFactory {
public:
JavaContextFactory();
~JavaContextFactory() override;
- JavaContext* create_context(std::function<void()> code,
- void_pfn_smxprocess_t, smx_actor_t process) override;
+ Context* create_context(std::function<void()>&& code, actor::ActorImpl* actor) override;
void run_all() override;
};