加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何在Perl中实现延迟模块加载?

发布时间:2020-12-15 21:54:35 所属栏目:大数据 来源:网络整理
导读:如何在Perl中实现延迟模块加载? 我在python中看到了类似的东西,实现有点简单,但在Perl中我认为这会有点困难. 解决方法 根据需要加载模块 如果需要在运行时加载整个模块,则使用 require .但是要导入,则需要额外的代码.这是一个例子: ## this function is al
如何在Perl中实现延迟模块加载?

我在python中看到了类似的东西,实现有点简单,但在Perl中我认为这会有点困难.

解决方法

根据需要加载模块

如果需要在运行时加载整个模块,则使用require.但是要导入,则需要额外的代码.这是一个例子:

## this function is almost the same 
## as "use My::Module qw( :something  )"
sub load_big_module_at_runtime {
    ## load module in runtime
    require My::Module;
    ## do import explicty if you need it
    My::Module->import( ':something' );
}

使用其功能时加载模块

您还可以在use autouse仅在使用其功能时加载模块.例如:

## will load module when you call O_EXCL()
use autouse Fcntl => qw( O_EXCL() );

仅在使用时加载功能

还有SelfLoader模块,它允许您仅在需要时加载单个功能.看看AutoLoader模块,它做了几乎相同的事情.

我还建议从Perl Cookbook阅读相应的食谱.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读