MonoObject *_data;
MonoObject *captured_traces;
MonoArray *native_trace_ips;
+ /* Dynamic methods referenced by the stack trace */
+ MonoObject *dynamic_methods;
};
typedef struct {
HANDLE start_notify;
gpointer stack_ptr;
gpointer *static_data;
- gpointer dead_field_remove_me; /* This used to be jit_data, but that was moved to MonoThreadInfo. */
void *thread_info; /*This is MonoThreadInfo*, but to simplify dependencies, let's make it a void* here. */
MonoAppContext *current_appcontext;
MonoException *pending_exception;
gpointer appdomain_refs;
/* This is modified using atomic ops, so keep it a gint32 */
gint32 interruption_requested;
- gpointer suspend_event;
- gpointer suspended_event;
- gpointer resume_event;
mono_mutex_t *synch_cs;
MonoBoolean threadpool_thread;
- MonoBoolean thread_dump_requested;
MonoBoolean thread_interrupt_requested;
- gpointer end_stack; /* This is only used when running in the debugger. */
int stack_size;
guint8 apartment_state;
gint32 critical_region_level;
MonoThreadManageCallback manage_callback;
gpointer interrupt_on_stop;
gsize flags;
- gpointer android_tid;
gpointer thread_pinning_ref;
- gint32 ignore_next_signal;
- MonoMethod *async_invoke_method;
/*
* These fields are used to avoid having to increment corlib versions
* when a new field is added to this structure.
MonoObject obj;
struct _MonoInternalThread *internal_thread;
MonoObject *start_obj;
- MonoObject *ec_to_set;
};
typedef struct {
MonoObject *state, gpointer data, MonoObject *object_data);
MonoObject *
-mono_async_result_invoke (MonoAsyncResult *ares, MonoObject **exc);
+ves_icall_System_Runtime_Remoting_Messaging_AsyncResult_Invoke (MonoAsyncResult *ares);
MonoWaitHandle *
mono_wait_handle_new (MonoDomain *domain, HANDLE handle);
typedef struct _MonoMulticastDelegate MonoMulticastDelegate;
struct _MonoMulticastDelegate {
MonoDelegate delegate;
- MonoMulticastDelegate *prev;
+ MonoArray *delegates;
};
struct _MonoReflectionField {