36 lines
754 B
TypeScript
36 lines
754 B
TypeScript
import { resolve } from "path";
|
|
import { type udp } from "bun";
|
|
import Tinypool from "tinypool";
|
|
|
|
type UDPDataType = {
|
|
address: string,
|
|
data: udp.Data,
|
|
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 }
|