把perl的hash结构放入数组/堆栈/队列的方法
发布时间:2020-12-16 00:32:32 所属栏目:大数据 来源:网络整理
导读:perl里没有内置的结构体,所以就需要用hash数组来模拟。 比如想定义一个含有name和address的结构,那么申请一个含有key是name和address的hash数组就可以了。 但是我在试图将这个结构放入队列时,却会出现问题,Thread::queue或者将内置的数组作为队列使用都
perl里没有内置的结构体,所以就需要用hash数组来模拟。 比如想定义一个含有name和address的结构,那么申请一个含有key是name和address的hash数组就可以了。 但是我在试图将这个结构放入队列时,却会出现问题,Thread::queue或者将内置的数组作为队列使用都会有问题。 使用一个叫FreezeThaw的module就可以了。 use FreezeThaw(freeze thaw); my $queue=Thread::Queue->new();//建立一个队列 my %hash=(name=>"sdcyzjq",address=>"beijing");//申请一个hash数组 my $freezed=freeze %hash;//将hash数组freeze成一个string $queue->enqueue($freezed);//入队 my $temp=$queue->dequeue();//出队 my %hash_thawed=thaw $temp;//解冻成原来的hash数组 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |