sig
type res_id = [ `Resource of int ]
type process_id = [ `Process of int ]
type compute_resource_type =
[ `File
| `Fork_point
| `Join_point
| `Posix_sem
| `Posix_shm
| `Posix_shm_preallocated
| `Posix_shm_preallocated_sc
| `Posix_shm_sc ]
type inherit_request = [ `All | `Resources of Netmcore.res_id list ]
type compute_resource_repr =
[ `File of string
| `Fork_point of
Netmcore.inherit_request * Netplex_encap.encap ->
Netmcore.process_id
| `Join_point of Netmcore.process_id -> Netplex_encap.encap option
| `Posix_sem of string
| `Posix_shm of string
| `Posix_shm_preallocated of string * Netsys_mem.memory
| `Posix_shm_preallocated_sc of
string * Netsys_mem.memory * Netsys_sem.container
| `Posix_shm_sc of string * Netsys_sem.prefix ]
exception No_resource of Netmcore.res_id
class type compute_resource =
object
method id : Netmcore.res_id
method release : unit -> unit
method repr : Netmcore.compute_resource_repr
method typ : Netmcore.compute_resource_type
end
val def_process :
(Netplex_encap.encap -> Netplex_encap.encap) ->
Netmcore.res_id * Netmcore.res_id
val start :
?inherit_resources:Netmcore.inherit_request ->
Netmcore.res_id -> Netplex_encap.encap -> Netmcore.process_id
val join :
Netmcore.res_id -> Netmcore.process_id -> Netplex_encap.encap option
val join_nowait :
Netmcore.res_id -> Netmcore.process_id -> Netplex_encap.encap option
val get_resource : Netmcore.res_id -> Netmcore.compute_resource
val release : Netmcore.res_id -> unit
val manage_file : string -> Netmcore.compute_resource
val get_file : Netmcore.res_id -> string
val manage_shm : string -> Netmcore.compute_resource
val manage_shm_sc :
string -> Netsys_sem.container -> Netmcore.compute_resource
val get_shm : Netmcore.res_id -> string
val get_sem_container : Netmcore.res_id -> Netsys_sem.container
val create_preallocated_shm :
?value_area:bool -> string -> int -> Netmcore.res_id * string
val create_preallocated_shm_sc :
?value_area:bool ->
string -> int -> Netmcore.res_id * string * Netsys_sem.container
val manage_sem : string -> Netmcore.compute_resource
val get_sem : Netmcore.res_id -> string
val self_process_id : unit -> Netmcore.process_id
val add_plugins : Netplex_types.controller -> unit
val startup :
socket_directory:string ->
?pidfile:string ->
?init_ctrl:(Netplex_types.controller -> unit) ->
?disable_pmanage:bool ->
?no_unlink:bool ->
first_process:('a -> Netmcore.process_id) -> 'a -> unit
val run :
socket_directory:string ->
?pidfile:string ->
?init_ctrl:(Netplex_types.controller -> unit) ->
?disable_pmanage:bool ->
?no_unlink:bool ->
first_process:('a -> Netmcore.process_id) ->
extract_result:(Netplex_types.controller -> Netmcore.process_id -> 'b) ->
'a -> 'b
val destroy_resources : unit -> unit
module Debug : sig val enable : bool Pervasives.ref end
end