41 lines
933 B
TypeScript
41 lines
933 B
TypeScript
import { resolve } from "path";
|
|
import Tinypool from "tinypool";
|
|
import type { UDPReceiveProcotol, UDPSendProtocol } from "./udpProtocol";
|
|
|
|
type UDPDataType = {
|
|
address: string,
|
|
data: (
|
|
UDPSendProtocol.CmdPackage |
|
|
UDPSendProtocol.DataPackage |
|
|
UDPReceiveProcotol.ReadPackage |
|
|
UDPReceiveProcotol.WritePackage
|
|
),
|
|
port: number,
|
|
date?: string,
|
|
}
|
|
|
|
const udpClientsPool = new Tinypool({
|
|
filename: resolve(__dirname, "./udpClient.ts"),
|
|
workerData: {}
|
|
})
|
|
|
|
const udpServer = new Tinypool({
|
|
filename: resolve(__dirname, "./udpServer.ts"),
|
|
workerData: {},
|
|
maxThreads: 1,
|
|
minThreads: 1,
|
|
})
|
|
|
|
async function udpServerPort(): Promise<number> {
|
|
return udpServer.run(null, { name: "port" })
|
|
}
|
|
|
|
async function uploadBitStream(): Promise<boolean> {
|
|
let ret = await udpClientsPool.run({} as UDPDataType, { name: "send" })
|
|
|
|
return ret
|
|
}
|
|
|
|
export { udpServerPort, uploadBitStream }
|
|
export type { UDPDataType }
|